Operations | Monitoring | ITSM | DevOps | Cloud

March 2022

Benefits of Localized Distributed Tracing

Distributed tracing is a household term nowadays – if your house is an IT department! Modern enterprises use cloud-native applications for agility and responsiveness to customer needs. When monitoring cloud-native applications, distributed tracing follows how transactions perform while traversing services or containers in the backend architecture. By definition, we’re describing production applications with requests, methods, database calls and logs that accompany a transaction.

How to get started with OpenTelemetry auto-instrumentation for Java

If you’re new to OpenTelemetry, like I was, you might be wondering how to quickly get started. OpenTelemetry is becoming the gold standard to collect all of your machine data and is changing observability as we know it. Instead of learning multiple technologies to collect all data, you can leverage a single cloud-native framework to complete your observability.

OpenTelemetry: How Cisco and AppDynamics are contributing to the future of observability

At Cisco and AppDynamics, we believe that OpenTelemetry™ is the future of observability. To that end, we’re working hard alongside the open source community to ensure the telemetry you collect can be leveraged to deliver the world-class business insights you need.

Serverless observability with OpenTelemetry and AWS Lambda

Nowadays, microservice architecture is a pattern that helps to innovate quicker by enabling easier scalability, giving language flexibility, improving fault isolation, etc. Systems built this way also bring some downsides. Moving parts, concurrent invocations, and different retries policies can make operating and troubleshooting such systems challenging. Without proper tools, correlating logs with metrics may be difficult. To overcome these challenges, you need observability.

How to achieve Observability for Microservices-based apps using Distributed Tracing?

Modern digital organizations have rapidly adopted microservices-based architecture for their applications. Microservices-based apps have components designed around business capabilities serving a specific purpose. It enables smaller engineering teams to own specific services that lead to increased productivity. But componentization also leads to complexity. Today’s modern internet-scale businesses have hundreds or thousands of microservices.

How Distributed Tracing augments the APM experience?

There are standalone distributed tracing tools like Jaeger, and there are APM tools that do not provide distributed tracing capabilities. In this article, we will see how distributed tracing complements an APM tool for a holistic performance monitoring experience. Both APM and distributed tracing are critical tools to understand the performance of your applications. And if your application is facing performance issues impacting customer experience, you need to understand what’s causing it fast.

Full trace retention search comes to Grafana Cloud

This week we have turned on full trace retention search (beta) in Grafana Cloud Traces. This feature was also introduced in the recent release of Grafana Tempo v1.3. Previously, if you brought up your Grafana Cloud Traces data source, you were greeted with this message: This message simply warned the user that the Grafana Tempo search was calibrated for recent traces only, regardless of the selected time window.

Distributed Tracing 101

The boom of digital commerce is making all businesses take a closer look at how they deliver great customer experiences. To stay competitive, businesses today are using cloud-native architectures, because the cloud-native applications they produce deploy quickly and better support the continuous improvement cycles of agile methodology. Behind the practicality of keeping online customers happy are distributed cloud environments that business applications use for each customer interaction.

Monitoring GraphQL APIs with OpenTelemetry

GraphQL is a query language for APIs developed by Facebook in 2012. It was then open-sourced in 2015. GraphQL enables frontend developers or consumers of APIs to request the exact data that they need, with no over-fetching or under-fetching. In this article, we will learn how to monitor GraphQL APIs with the open-source APM tool, SigNoz. GraphQL has become a popular alternative to REST because of its ease of use. It enables developers to pull data from multiple data sources in a single API call.

Unified Serverless Observability With OpenTelemetry and StackState v4.6

StackState has always believed in the importance of open source and open standards, and we’ve demonstrated our commitment through ongoing support of open technologies. From the beginning, StackState supported StatsD and OpenMetrics. Even our agent is open source, designed to help organizations easily onboard our platform and to give them an extensible open way to observe their services. StackState is now proud to announce our next big open source step.

A tale of dependencies

One Friday afternoon we got a Slack message from one of our early customers, letting us know that there was an issue with updating our SDK. Apparently, our SDK introduced a new dependency to the code that their team wasn’t able to meet: graphql@16.0.1. This made it impossible for the customer to upgrade to a newer version of our SDK and became a blocker for them.

Why is Distributed Tracing in Microservices needed?

Microservices architecture allows technology companies to build application services around business capabilities. It enables rapid development and also boosts developer productivity. But it also introduces complexity. Troubleshooting and operating an internet-scale application based on microservices is hard. And that’s where distributed tracing comes into the picture. Traditional monolithic application architecture is easy to develop, deploy and monitor.

startSpan vs. startActiveSpan

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 custom instrumentation. For this important activity that I’m doing (let’s call it “retrieve number”), I’m creating a custom span.

Real-time distributed tracing for .NET Lambda functions

In 2020 we released distributed tracing for AWS Lambda functions written in Python, Node.js, and Ruby, providing you with health and performance insights across your serverless applications. Since then, we’ve expanded our support to additional Lambda runtimes such as Java and Go, and are pleased to announce that real-time distributed tracing is now also available for.NET Lambda functions.

APM is Legacy. Distributed Tracing is Designed for Modern Teams

Some background. Having implemented at least 20 or more APM systems in production as an end-user at various companies, and both deployed and managed countless monitoring tools outside APM, I understand the role of the practitioner. Later on, I shifted to Gartner and led the APM Magic Quadrant for four years, finally spending another four years at AppDynamics (operating under Cisco after two years).

A trace visualization worth a thousand words

One of our core values at Helios is to eat our own dog food (or for those of you who want to keep it classy, “drink our own champagne”). While this is a known best practice among many product development teams, it’s even more important when working on tools meant to be used on an ongoing basis by developers.

Elastic Observability 8.1: Visibility into AWS Lambda, CI/CD pipelines, and more

Technologies such as serverless computing frameworks and CI/CD automation tools help accelerate software development lifecycles (SDLC) to give development teams a competitive edge in the marketplace. Armed with these technologies, teams can deploy and innovate faster and more frequently by automating repetitive tasks and eliminating the need to manage or provision servers.

OpenTelemetry and Distributed Tracing in JavaScript

In our Configuring OpenTelemetry in Ruby blog post, we showed how to configure OpenTelemetry in a Ruby on Rails backend. In this post, we’ll cover how to configure OpenTelemetry in the front-end JavaScript in order to measure performance of browser and mobile devices and how to configure distributed tracing to work across the frontend and back end telemetry collection. Let’s dive in!

Ask Miss O11y: Making Sense of OpenTelemetry: Who's There? The Resource.

Ah, I too have wondered about this. TL;DR: The Resource says what program is sending these spans and where it’s running. You can skip it if you define OTEL_SERVICE_NAME in the environment. When I’m setting up tracing (for instance, in a Node.js app), I have to create a Resource object in order to set up the OpenTelemetry SDK: If I don’t define that resource parameter, then tracing will still work. But my spans will show up with aservice.name of unknown_service:node.

OpenTelemetry (OTel) Is Key to Avoiding Vendor Lock-in

The promise of OpenTelemetry is that it can help you avoid vendor lock-in by allowing you to instrument your applications once, then send that data to any backend of your choice. This post shows you exactly how to do that with code samples that configure your application to send telemetry data to both Honeycomb and New Relic.