Language APIs & SDKs

OpenTelemetry code instrumentation is supported for many popular programming languages

OpenTelemetry code instrumentation is supported for the languages listed in the Statuses and Releases table below. Unofficial implementations for other languages are available as well. You can find them in the registry.

For Go, .NET, PHP, Python, Java and JavaScript you can use zero-code solutions to add instrumentation to your application without code changes.

If you are using Kubernetes, you can use the OpenTelemetry Operator for Kubernetes to inject these zero-code solutions into your application.

Status and Releases

The current status of the major functional components for OpenTelemetry is as follows:

LanguageTracesMetricsLogs
C++StableStableStable
C#/.NETStableStableStable
Erlang/ElixirStableDevelopmentDevelopment
GoStableStableBeta
JavaStableStableStable
JavaScriptStableStableDevelopment
PHPStableStableStable
PythonStableStableDevelopment
RubyStableDevelopmentDevelopment
RustBetaAlphaAlpha
SwiftStableDevelopmentDevelopment

API references

Special Interest Groups (SIGs) implementing the OpenTelemetry API and SDK in a specific language also publish API references for developers. The following references are available:


SDK Configuration

C++

C++ A language-specific implementation of OpenTelemetry in C++.

.NET

.NET A language-specific implementation of OpenTelemetry in .NET.

Erlang/Elixir

Erlang/Elixir A language-specific implementation of OpenTelemetry in Erlang/Elixir.

Go

Go A language-specific implementation of OpenTelemetry in Go.

Java

Java Language-specific implementation of OpenTelemetry in Java.

JavaScript

JavaScript A language-specific implementation of OpenTelemetry in JavaScript (for Node.js & the browser).

PHP

PHP A language-specific implementation of OpenTelemetry in PHP.

Python

Python A language-specific implementation of OpenTelemetry in Python.

Ruby

Ruby A language-specific implementation of OpenTelemetry in Ruby.

Rust

Rust A language-specific implementation of OpenTelemetry in Rust.

Swift

Swift A language-specific implementation of OpenTelemetry in Swift.

Other languages

Language-specific implementation of OpenTelemetry for other languages.