Uptrace.OpenTelemetry
0.3.0
dotnet add package Uptrace.OpenTelemetry --version 0.3.0
NuGet\Install-Package Uptrace.OpenTelemetry -Version 0.3.0
<PackageReference Include="Uptrace.OpenTelemetry" Version="0.3.0" />
<PackageVersion Include="Uptrace.OpenTelemetry" Version="0.3.0" />Directory.Packages.props
<PackageReference Include="Uptrace.OpenTelemetry" />Project file
paket add Uptrace.OpenTelemetry --version 0.3.0
#r "nuget: Uptrace.OpenTelemetry, 0.3.0"
#:package Uptrace.OpenTelemetry@0.3.0
#addin nuget:?package=Uptrace.OpenTelemetry&version=0.3.0Install as a Cake Addin
#tool nuget:?package=Uptrace.OpenTelemetry&version=0.3.0Install as a Cake Tool
Uptrace for .NET
build workflow NuGet Documentation Chat
<a href="https://uptrace.dev/get/opentelemetry-dotnet"> <img src="https://uptrace.dev/devicon/dot-net-original.svg" height="200px" /> </a>
Introduction
uptrace-dotnet is an OpenTelemetry distribution configured to export traces, metrics, and logs to Uptrace.
Installation
Install uptrace-dotnet:
dotnet add package Uptrace.OpenTelemetry
Tracing
You can configure the Uptrace client using a DSN (Data Source Name, e.g.
https://<secret>@api.uptrace.dev?grpc=4317) from the project settings page.
using System;
using System.Diagnostics;
using OpenTelemetry;
using OpenTelemetry.Trace;
using OpenTelemetry.Resources;
using Uptrace.OpenTelemetry;
using var tracerProvider = Sdk.CreateTracerProviderBuilder()
.AddSource("*") // subscribe to all activity sources
.SetResourceBuilder(
ResourceBuilder
.CreateDefault()
.AddEnvironmentVariableDetector()
.AddService("myservice")
)
// copy your project DSN here or use UPTRACE_DSN env var
//.AddUptrace("https://<secret>@api.uptrace.dev?grpc=4317")
.AddUptrace()
.Build();
See the basic example to try OpenTelemetry and Uptrace.
Metrics
using System;
using System.Diagnostics;
using System.Diagnostics.Metrics;
using OpenTelemetry;
using OpenTelemetry.Metrics;
using OpenTelemetry.Resources;
using Uptrace.OpenTelemetry;
using var meterProvider = Sdk.CreateMeterProviderBuilder()
.AddMeter("MyMeter") // subscribe to all the meters you want
.AddMeter("*") // or subscribe to all meters
.SetResourceBuilder(
ResourceBuilder
.CreateDefault()
.AddEnvironmentVariableDetector()
.AddService(serviceName: "myservice", serviceVersion: "1.0.0")
)
// copy your project DSN here or use UPTRACE_DSN env var
.AddUptrace()
.Build();
See the metrics example to try OpenTelemetry and Uptrace.
Logs
using Microsoft.Extensions.Logging;
using OpenTelemetry.Logs;
using OpenTelemetry.Resources;
using Uptrace.OpenTelemetry;
using var loggerFactory = LoggerFactory.Create(builder =>
{
builder.AddOpenTelemetry(options =>
{
options.IncludeScopes = true;
options.ParseStateValues = true;
options.IncludeFormattedMessage = true;
options
.SetResourceBuilder(
ResourceBuilder
.CreateDefault()
.AddEnvironmentVariableDetector()
.AddService(serviceName: "myservice", serviceVersion: "1.0.0")
)
// copy your project DSN here or use UPTRACE_DSN env var
.AddUptrace();
});
});
var logger = loggerFactory.CreateLogger<Program>();
logger.LogInformation("Hello from {name} {price}.", "tomato", 2.99);
See the logs example to try OpenTelemetry and Uptrace.
Runtime metrics
To collect telemetry about runtime behavior, install OpenTelemetry.Instrumentation.Runtime:
dotnet add package OpenTelemetry.Instrumentation.Runtime
And enable the instrumentation:
using var meterProvider = Sdk.CreateMeterProviderBuilder()
.AddRuntimeInstrumentation()
.AddUptrace()
.Build();
Links
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- OpenTelemetry.Exporter.OpenTelemetryProtocol (>= 1.16.0)
- OpenTelemetry.Extensions.AWS (>= 1.16.0)
-
net8.0
- OpenTelemetry.Exporter.OpenTelemetryProtocol (>= 1.16.0)
- OpenTelemetry.Extensions.AWS (>= 1.16.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.3.0 | 39 | 7/2/2026 |
| 0.2.2 | 29,502 | 11/21/2024 |
| 0.2.1 | 3,806 | 6/6/2024 |
| 0.2.0 | 3,103 | 11/6/2023 |
| 0.1.8 | 18,982 | 2/27/2023 |
| 0.1.7 | 3,186 | 1/20/2023 |
| 0.1.6 | 71,543 | 6/17/2022 |
| 0.1.5 | 465 | 5/26/2022 |
| 0.1.4 | 9,941 | 4/18/2022 |
| 0.1.3 | 652 | 4/12/2022 |
| 0.1.2 | 637 | 4/10/2022 |
| 0.1.1 | 489 | 12/25/2021 |
| 0.1.0 | 583 | 10/31/2021 |