1. 5
  1. 1

    I wrote an instrumentation wrapper at Stitch Fix and have some knowledge about Open Tracing and this general corner of tech, and my first impression skimming this is that… there’s a lot of solid, thought-out info in here. People interested in application performance metrics should read this.

    I also boggled a bit at “are they really doing all this in-house?” vs using some of the popular existing tools… well they had that covered:

    Our experience matches this article in that the constraints and limitations of tracing systems often don’t justify the effort of implementing tracing in an organization. Even when a tracing system is implemented, it falls by the wayside once the initial excitement wanes. Thus, it’s not surprising that tracing has seen anemic adoption in the industry when compared to technologies like containers, micro services, centralized logging, and service meshes.

    This is tricky to read in the context of “why in-house?” - the “don’t justify the effort of implementing tracing” part isn’t talking about THAT, it’s saying that the value proposition of existing tools often doesn’t justify the effort of using them. What I think is novel here is that they found ways of extracting value from the raw trace data in new ways that aren’t necessarily directly offered by 3rd party APM, because… well.. it’s hard to find the right perspective on that info (but the info IS there!). And THAT is why they did it in-house. I think. Disclaimer: I don’t know all APM tools, maybe ones I haven’t used totally can offer these features (but I sorta doubt it! tell me if I’m wrong!)

    I admit, it’s late, I’m tired, and I still have only skimmed this, but it definitely deserves a closer look. It’s oddly getting me excited about exploring new ways of using instrumentation data, which is something I’ve had a fairly passive perspective on before now.

    1. 2

      I get what you mean, personally, this is what I find more interesting about honeycomb.io. Jaeger & Zipkin are very good at offering a visualization for a single trace and even (to some extent) to filter/search the traces by certain properties, but they’re not focused on how you discover (or browse) the data or trace context. Honeycomb offers a way to query any part of the data within the traces (context) without making you focus on a single trace from the very beginning, which makes it quite more useful IMHO.

      Personally, I believe that elastic with their APM product has a good shot on offering something similar, but they seem to be quite focused on the single trace experience like Jaeger/Zipkin. To be fair they extract some info from the trace automatically to offer some builtin dashboards (duration, transactions over time, etc.) on the APM view, but it doesn’t feel like they the discoverability of the underline data is a priority. Perhaps it has to do with how the UI is built.