Deign Doc: Chromium build time profiler
How to:
See infra/go/README.md for preparation.
to compile
$ make build
to deploy to production
$ make deploy-prod
to run test
$ make test
Setup
$ bq --project_id=$PROJECT mk ninjalog
$ make update-staging # for staging $ make update-prod # for prod
Ninja log is uploaded from user too. Upload script is located in depot_tools.
SELECT ( SELECT value FROM UNNEST(build_configs) WHERE key = "target_os") target_os, os, SUBSTR(ARRAY_TO_STRING(outputs, ", "), 0, 128) outputs, ROUND(AVG(end_duration_sec - start_duration_sec), 2) task_duration_avg, ROUND(SUM(end_duration_sec - start_duration_sec), 2) task_duration_sum, ROUND(SUM(weighted_duration_sec), 2) weighted_duration_sum, COUNT(1) cnt FROM `chromium-build-stats.ninjalog.users`, UNNEST(log_entries) WHERE created_at >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY) GROUP BY target_os, os, outputs ORDER BY weighted_duration_sum DESC