☀️ Distributed tracing initial setup best practices

Review the recommended initial setup best practices below to make sure you get the most value when applying observability to your distributed application.

Making sure Helios is set up properly so that you can benefit the most out of using OpenTelemetry distributed tracing in your application is comprised of the following steps:

  1. Instrumenting microservices
  2. Instrumenting existing tests
  3. Instrumenting logs (often happens automatically)
  4. Setting up labels & alerts
  5. Installing the Helios Slack app and establishing a mutual Slack channel
  6. Inviting users to Helios

Instrumenting microservices

  • Benefits
    ✅ Real-time visibility into what's happening in your local, staging, CI and production environments
    ✅ E2E trace visualization - including all payloads (e.g., HTTP request/response bodies, message queues content, DB queries and results, etc.), headers, and all span attributes
    ✅ Replay flows and generate tests automatically

  • Validation that setup is done

    • Traces show up in the Helios app and trace visualization can be used
    • Flow replay code can be uploaded into Postman
    • Service commit hash from CI environment shows up in trace visualization
  • Docs
    C++ | Erlang | Go | Java | .NET | Web JS | Node.js | Python | Ruby

GoJavaNode.jsPythonRuby
Minimum version supported by Helios1.188143.72.7

Instrumenting existing tests

  • Benefits
    ✅ Real-time visibility into rest runs and results, including changes over time
    ✅ Easier debugging using visualization

  • Validation that setup is done

    • Tests & tests runs (traces) show up in the 'Tests' page
    • URL to test run (trace) visualization is printed in the console at the end of each test run
    • Test runs show (and link to) job name and ID from CI environment
  • Docs
    Cucumber | Cypress | Jest | Mocha | pytest Playwright

  • Example for an Instrumented test run that is easy to troubleshoot in the Helios Sandbox

Instrumenting logs

  • Benefits
    ✅ 1-click access to trace visualization in Helios directly from your logs
    ✅ Visibility of error logs on the relevant span and trace in Helios
  • Validation that setup is done
    • URL to trace visualization in Helios is easily accessible from each log
  • Docs
    Logs should be automatically instrumented.
    Check out the logz.io integration guide to learn how to get the full context of each log through its respective trace in Helios.
  • Example for a distributed trace that also has an error log included in the Helios Sandbox

Setting up labels & alerts

  • Benefits
    ✅ Get notified in real-time, with the right data and context, when specific alert conditions occur
    ✅ Quick access to personalized labels that are of high value to each user for observability & monitoring
  • Validation that setup is done
    • If a notification is configured, make sure it's received when the appropriate conditions are met.
  • Docs
    Learn more about all that can be done with labels, alerts & notifications in Helios.

Integrating Slack

:star: Install the Helios Slack app (under user menu > Settings > Integration > Slack) to get reports and alerts directly to your selected Slack channel.

:star: Make sure the mutual Slack channel with Helios and your company is set up (might require admin approval).

Inviting users to Helios

:star:Finally, add users so that your entire team can save time and ship distributed applications faster!

👍

All set

That's it! You're all setup and ready to use Helios during your development cycle. To get inspired, have a look at sample use cases on how to leverage dev-first observability to save time, troubleshoot faster and improve dev experience.