You push a change, run your trace, and see spans everywhere except the one thing you actually care about. The slowdown hides in plain sight. That is the moment you start wondering if your observability stack is doing its job or just playing color-by-numbers with time series data. This is where Honeycomb Mercurial earns its name.
Honeycomb gives teams a powerful way to dissect distributed traces in real time. Mercurial, the lightweight DVCS, handles code versioning with speed and simplicity. Together they tell a clean story about cause and effect: what code changed, what behavior followed, and why. Instead of juggling commit logs and service metrics in separate tools, you can trace a latency spike back to the exact hash that introduced it.
At its core, Honeycomb Mercurial is not an official product but a workflow—linking structured observability data from Honeycomb with Mercurial’s precise change tracking. The combination brings source control context into your performance analysis. Instead of staring at metrics dashboards guessing which release broke something, you can correlate trace fields with commit metadata. When each span references a commit ID, you have a living timeline of both code and runtime.
How it works
The pairing hinges on consistent identifiers. Mercurial commits expose hash IDs that travel through build pipelines as environment variables or metadata tags. Honeycomb ingests these identifiers as event fields. When traces arrive, they carry commit provenance, author, and message context. You can filter Honeycomb queries by commit range, author, or branch to isolate regressions quickly. It transforms traditional “what happened?” debugging into “who changed what and when did we first see it?”
Best practices
Tag every build with the Mercurial revision so observability data always matches the deployed code. Rotate tokens or API keys with your CI system, not in the repository. Use an identity layer such as OIDC or Okta to restrict who can send trace data from protected environments.