startSpan vs startActiveSpan in OpenTelemetry JS

TL;DR: startSpan is easier and measures a duration. Use it if your work won’t create any subspans. startActiveSpan requires that you pass a callback for the work in the span, and then any spans created during that work will be children of this active span. I’m instrumenting a Node.js app with OpenTelemetry, and adding some … Read morestartSpan vs startActiveSpan in OpenTelemetry JS

Three Easy Ways to Use Distributed Traces

What is happening in production? Distributed tracing can help you find out. But it’s one thing to instrument, another to use it. Here’s a short (6m) video that asks “Why is this so slow?” See three quick ways to get answers in Honeycomb. If you want to follow along and play with the same data … Read moreThree Easy Ways to Use Distributed Traces

Honeycomb in Rails with separate dev and production events

Honeycomb made it suuuuuper easy to see traces of HTTP requests hitting my app. Right from my computer! We installed one gem, did one rails generate from a cut-and-paste their dataset creation page gave me. Start up rails server, hit http://localhost:3000, and boom! A thing on a graph in Honeycomb! That was cool. Except, um, … Read moreHoneycomb in Rails with separate dev and production events

Honeycomb in Rails without hard-coding the API key

Today we hooked up Honeycomb to an app for the first time! It was easy and fun! Then we configured it so that we don’t have to commit our apikey. It’s a public repo. Anyone could grab our API key and send spurious events to our Honeycomb datasets, screwing up our information and costing us … Read moreHoneycomb in Rails without hard-coding the API key