Bazel Invocation Analyzer

Free, open-source analysis of your Bazel profile, with concrete recommendations

Bazel writes a JSON profile on every invocation, but reading one by hand is slow. The Bazel Invocation Analyzer parses the profile and tells you what to change: critical path, slow actions, queueing, cache misses, and the flags or rules behind them.

You can analyze your Bazel profiles on analyzer.engflow.com or download the source code from GitHub and run the tool locally.

Open-source contributions

We welcome contributions to this project.

You can contribute to the code base or help by reporting bugs, requesting new features and providing feedback. Share the Bazel Invocation Analyzer with others who may find it helpful.

Ways to get in touch

  • Provide feedback through the Web UI on analyzer.engflow.com.
  • View the source code and issue tracking on GitHub.
  • You can also email the development team directly.

From one profile to every invocation

The Analyzer reads one profile at a time. The EngFlow Build and Test UI records every build and test invocation across your organization and lets you search, compare, and attribute time across them.

Search across builds

Stop hunting through pipelines and logs. Find similar failures, specific targets, specific tests, specific users, or specific time windows—then compare runs.

Time and performance attribution

See where time goes across the build graph: critical path, slow actions, queueing, downloads, remote execution, test time, and bottlenecks. Move from “it’s slow” to “this is the constraint.”

Explain any invocation

Inspect builds from developer machines and CI in the same interface. See what ran, what failed, what changed, and what artifacts were produced.

Failure forensics, not log reading

Drill into the first failing action, its inputs/outputs, execution context, and dependencies. Understand whether the failure is deterministic, environmental, or flaky.