惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
罗磊的独立博客
M
MIT News - Artificial intelligence
G
Google Developers Blog
V
V2EX
D
Docker
博客园_首页
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
Y
Y Combinator Blog
WordPress大学
WordPress大学
T
Tailwind CSS Blog
博客园 - 司徒正美
J
Java Code Geeks
L
LangChain Blog
博客园 - 三生石上(FineUI控件)
B
Blog RSS Feed
博客园 - 【当耐特】
小众软件
小众软件
Apple Machine Learning Research
Apple Machine Learning Research
大猫的无限游戏
大猫的无限游戏
P
Proofpoint News Feed
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - Franky

Datadog | The Monitor blog

Introducing our open source AI-native SAST Instrument and monitor Boomi integration flows with OpenTelemetry and Datadog Not all index scans are equal: How we cut query latency by over 99% Platform engineering metrics: What to measure and what to ignore Integrate Recorded Future threat intelligence with Datadog Cloud SIEM CI/CD security: threat modeling using a MITRE-style threat matrix CI/CD security: How to secure your GitHub ecosystem Ingress NGINX is EOL: A practical guide for migrating to Kubernetes Gateway API Operating agentic AI with Amazon Bedrock AgentCore and Datadog LLM Observability: Lessons from NTT DATA Introducing the Datadog Code Security MCP Capture and analyze custom heatmaps in Session Replay Understand session replays faster with AI summaries and smart chapters Monitor ClickHouse query performance with Datadog Database Monitoring How we designed empathetic alert sounds for on-call engineers Search and act across Datadog to resolve issues faster with Bits Assistant Measure the business impact of every product change with Datadog Experiments Analyzing round trip query latency Configuring JavaScript caches for better performance Introducing Bits AI Dev Agent for Code Security Datadog achieves ISO 42001 certification for responsible AI Monitor Nutanix clusters, hosts, and VMs with Datadog Monitor Juniper Mist in Datadog A new Host Map for modern infrastructure Annotate traces to improve LLM quality with Datadog LLM Observability What’s new in Cloud SIEM: AI-powered investigations, enhanced threat intelligence, and scalable security operations Explore Kubernetes with native OpenTelemetry data Monitor Oracle Fusion Cloud Applications with Datadog Announcing the Datadog Terraform provider v4.0.0 Scaling Kubernetes workloads on custom metrics How to design cloud environments for AI-powered threat analysis
Announcing Go tracer v2.0.0
2025-06-05 · via Datadog | The Monitor blog

Datadog has long supported the monitoring of instrumented Go applications through our Go tracer v1. As the Go ecosystem has continued to mature, we’ve been hard at work collecting feedback and improving upon the tracer’s capabilities and usability features.

We are now thrilled to announce the release of our Go tracer v2.0.0. This major update includes better security and stability, and a new and simplified API. In creating this updated version, we have incorporated valuable feedback both from our customer community and from our own teams at Datadog who use the Go tracer extensively. We have already tested this new version in production and have migrated all our internal services.

This post will introduce the new features of Go tracer v2 and provide guidance for users about how to upgrade.

Improved developer experience and security

The new version of the Go tracer offers a number of new improvements.

Simpler API

The Go tracer v2 provides a simpler, leaner, and more consistent API that improves the developer experience. For example, child spans are now created using the StartChild method on the parent span. Moreover, all options are now standardized with the same signature across all contribs (integrations), making it easier to use them in a consistent way.

Enhanced security posture

The new Go tracer version overhauls the older approach to integrations. Previously, we used a single Go module to hold all our contribs. In v2, we’ve reduced the number of dependencies on dd-trace-go, isolating our contribs’ dependencies in their own modules so that these integrations are now all independent modules. This change keeps the number of exposed dependencies to a minimum and prevents false positives—in security scanners and automation tools like Dependabot—that were previously caused by exposing indirect dependencies.

Import URL change

In v2, we have moved away from using gopkg.in as our public package repository in favor of github.com. This change reflects the need for a more scalable and reliable solution.

The new repository affects the import URL in different ways for different types of dependencies. For example, to import the tracer library itself, you now use:

import “github.com/DataDog/dd-trace-go/v2/ddtrace/tracer”

To import third-party contrib packages, you would use a URL with the following pattern:

import "github.com/DataDog/dd-trace-go/contrib/<PACKAGE_DIR>/<PACKAGE_NAME>/v2"

For example, to import the net/http integration, you would use the following URL:

import “github.com/DataDog/dd-trace-go/contrib/net/http/v2”

For a list of the Go tracer’s supported packages and their import URLs, see our documentation.

Config structs

We’ve introduced support for providing all configurations in a single struct, which can now be passed to the NewStartSpanConfig and WithStartSpanConfig functions and replace the need for multiple distinct functional options. This gives you more control over the tracer’s impact on hot paths in your code and allows you to reduce CPU overhead by preparing common span tags in your traces. Note that the Go functional options are still supported, but see this article by a Datadog engineer for some background about related performance issues.

To view the complete set of changes implemented in this release, refer to the issues and PRs marked with the v2.0 label in our GitHub repository.

Upgrade guidance

You can upgrade to the Go tracer v2 by following the instructions in our migration guide. As mentioned in the guide, we provide a v2 Migration Tool to simplify the upgrade process.

For more information, refer to our Go tracer documentation and the godoc page.

Go tracer v1.74.0: The v1 transitional version

For customers that have large codebases and that are unable to completely upgrade services to the Go tracer v2 by the end-of-life for v1, we are offering a special transitional version of the Go tracer v1. The Go tracer v1 transitional version is a wrapper that preserves the API from v1 but uses v2 under the hood.

The transitional version is the only v1 version that allows both v1 and v2 to be imported in the same service—enabling you to migrate a service gradually. Using this v1 transitional version doesn’t require any code changes, but it also won’t support any new features introduced in the new v2 tracer.

The v1 transitional version is available as v1.74.0. We encourage all customers to upgrade to this transitional version while they prepare to transition their existing services to v2. We also encourage all customers to use v2 only for new services. If you have concerns or reasons to not upgrade to the transitional version, contact us and we’ll work together to resolve them.

Consult our documentation for more key dates related to our Go tracer version support.

Although we are offering the v1 transitional version for the convenience of our customers, we strongly encourage you to upgrade to the v2 version as soon as possible to benefit from the newest features and improvements.

Try out the Datadog Go tracer v2

Our work does not end here. We will continue to incorporate both internal and external feedback from the Datadog community in future updates to our new Go tracing v2 client. Try it out and let us know what you think! We are eager to receive your feedback.

We hope that you will be as happy as we are with these changes, and we look forward to continuing to deliver a stable, full-featured, and bug-free tracing system for you to use in your Go applications. If you need support or have any questions, feel free to ask us or submit a question on GitHub.

And if you’re not yet a Datadog customer, you can sign up for our free trial.