Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
79 changes: 79 additions & 0 deletions content/en/blog/2026/kotlin-multiplatform-opentelemetry.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
---
title: 'New OpenTelemetry Kotlin SDK'
linkTitle: 'New OpenTelemetry Kotlin SDK'
date: 2026-03-23
author: >-
[Jamie Lynch](https://github.com/fractalwrench) (Embrace)
sig: Kotlin
---

Following a [donation](https://github.com/open-telemetry/community/issues/2975)
from Embrace and a
[call for contributors](/blog/2025/kotlin-multiplatform-opentelemetry.md),
OpenTelemetry now has
[a Kotlin SDK](https://github.com/open-telemetry/opentelemetry-kotlin) in active
development.

The project is looking for contributors and folks who are interested in using
the library in their application.

## Why launch OpenTelemetry for Kotlin?

[Kotlin Multiplatform](https://www.jetbrains.com/kotlin-multiplatform/) (KMP)
allows running Kotlin code on many different platforms, such as browser, server,
and desktop environments. Traditionally Kotlin has been most popular on Android
and the JVM, but with the advent of KMP the number of folks using it to share
code between different platforms has been steadily growing.

Having a Kotlin Multiplatform implementation of OpenTelemetry allows KMP and
Kotlin projects to capture telemetry using one API for many different platforms.
The API has been designed to remain as platform-agnostic as possible whilst
staying mobile-friendly for the common Android/iOS use-case.

## Current state of the project

The Kotlin Special Interest Group (SIG) has started meeting weekly at
[9am PST on Mondays](https://github.com/open-telemetry/community#calendar). Come
join the meeting if you're interested in discussing the project or have
questions that you'd like to discuss synchronously!

The Kotlin SDK currently supports the Android, JVM, iOS, and JS targets.
Android/JVM are the most extensively battle-tested at this time.

Initial implementations are available for the Logging and Tracing APIs. These
APIs are not considered stable yet, primarily as we'd like to receive further
feedback from real-users on the API's semantics and usability.

## Where is the project going?

The project has several long-term goals. Firstly, we plan on stabilizing the
Logging and Tracing APIs after receiving sufficient feedback on their usability.
Part of this will involve checking that the project
[complies with the OpenTelemetry specification](https://github.com/open-telemetry/opentelemetry-specification/blob/v1.54.0/spec-compliance-matrix.md)
whilst offering a fluent Kotlin API.

Secondly, a key goal is to attract new folks to the OpenTelemetry ecosystem from
mobile development environments. We hope to achieve this with a mobile-friendly
API and by fixing some current rough edges that affect client/mobile, such as
how process terminations are handled.

Finally, we hope to attract a healthy community of Kotlin developers who are
actively contributing and giving feedback to the project.

## Call for contributors

If you're interested in using OpenTelemetry on Kotlin Multiplatform we need your
help! We are looking for contributors who are willing to maintain the codebase,
participate in regular Special Interest Group (SIG) meetings, and generally help
drive the SDK forward.

If you're interested in contributing please check out how you can help via the
[repository guidelines](https://github.com/open-telemetry/opentelemetry-kotlin?tab=readme-ov-file#contributing)
and join the [#otel-kotlin](https://cloud-native.slack.com/archives/C08NRCD4R4G)
channel in the [CNCF Slack](https://slack.cncf.io/).

If you're using the project in your application or have any feedback, please do
[open an issue](https://github.com/open-telemetry/opentelemetry-kotlin/issues)
on the repository with your thoughts. _All_ feedback is incredibly helpful at
this early stage and is invaluable for helping the maintainers learn how folks
use the project.
20 changes: 20 additions & 0 deletions static/refcache.json
Original file line number Diff line number Diff line change
Expand Up @@ -827,6 +827,10 @@
"StatusCode": 200,
"LastSeen": "2026-02-25T09:58:57.729022748Z"
},
"https://cloud-native.slack.com/archives/C08NRCD4R4G": {
"StatusCode": 200,
"LastSeen": "2026-02-27T09:16:20.38383Z"
},
"https://cloud-native.slack.com/archives/C08P9L4FPKJ": {
"StatusCode": 200,
"LastSeen": "2026-02-24T09:58:41.89889947Z"
Expand Down Expand Up @@ -13835,6 +13839,10 @@
"StatusCode": 206,
"LastSeen": "2026-02-25T09:53:29.140268648Z"
},
"https://github.com/open-telemetry/opentelemetry-kotlin/issues": {
"StatusCode": 206,
"LastSeen": "2026-02-27T09:16:24.26734Z"
},
"https://github.com/open-telemetry/opentelemetry-kotlin/releases": {
"StatusCode": 206,
"LastSeen": "2026-02-25T09:53:26.621201761Z"
Expand All @@ -13843,6 +13851,10 @@
"StatusCode": 206,
"LastSeen": "2026-02-25T09:53:22.270977709Z"
},
"https://github.com/open-telemetry/opentelemetry-kotlin?tab=readme-ov-file#contributing": {
"StatusCode": 206,
"LastSeen": "2026-02-27T09:16:18.918994Z"
},
"https://github.com/open-telemetry/opentelemetry-lambda": {
"StatusCode": 206,
"LastSeen": "2026-02-20T09:51:40.948841433Z"
Expand Down Expand Up @@ -14991,6 +15003,10 @@
"StatusCode": 206,
"LastSeen": "2026-02-23T19:29:06.093474-05:00"
},
"https://github.com/open-telemetry/opentelemetry-specification/blob/68696c9e9b334107c57c259c53c83ff820c3abc0/spec-compliance-matrix.md?from_branch=main": {
"StatusCode": 206,
"LastSeen": "2026-02-27T09:16:16.748674Z"
},
"https://github.com/open-telemetry/opentelemetry-specification/blob/97c826b70e2f89cfdf655d5150791f3f0c2bae19/oteps/profiles/0239-profiles-data-model.md?from_branch=main": {
"StatusCode": 206,
"LastSeen": "2026-02-23T19:29:04.476483-05:00"
Expand Down Expand Up @@ -15155,6 +15171,10 @@
"StatusCode": 206,
"LastSeen": "2026-02-20T14:23:03.013866484Z"
},
"https://github.com/open-telemetry/opentelemetry-specification/blob/v1.54.0/spec-compliance-matrix.md": {
"StatusCode": 206,
"LastSeen": "2026-02-27T10:07:28.542017Z"
},
"https://github.com/open-telemetry/opentelemetry-specification/blob/v1.54.0/spec-compliance-matrix.md#logs": {
"StatusCode": 206,
"LastSeen": "2026-02-20T14:22:46.470932758Z"
Expand Down