HVO.Enterprise.Telemetry.OpenTelemetry
1.1.2
dotnet add package HVO.Enterprise.Telemetry.OpenTelemetry --version 1.1.2
NuGet\Install-Package HVO.Enterprise.Telemetry.OpenTelemetry -Version 1.1.2
<PackageReference Include="HVO.Enterprise.Telemetry.OpenTelemetry" Version="1.1.2" />
<PackageVersion Include="HVO.Enterprise.Telemetry.OpenTelemetry" Version="1.1.2" />
<PackageReference Include="HVO.Enterprise.Telemetry.OpenTelemetry" />
paket add HVO.Enterprise.Telemetry.OpenTelemetry --version 1.1.2
#r "nuget: HVO.Enterprise.Telemetry.OpenTelemetry, 1.1.2"
#:package HVO.Enterprise.Telemetry.OpenTelemetry@1.1.2
#addin nuget:?package=HVO.Enterprise.Telemetry.OpenTelemetry&version=1.1.2
#tool nuget:?package=HVO.Enterprise.Telemetry.OpenTelemetry&version=1.1.2
HVO.Enterprise.Telemetry.OpenTelemetry
OpenTelemetry OTLP exporter integration for HVO.Enterprise.Telemetry.
Features
- OTLP Export — Send traces, metrics, and logs to any OTLP-compatible backend
- Auto-Configuration — Environment variable-based endpoint configuration (
OTEL_EXPORTER_OTLP_ENDPOINT,OTEL_SERVICE_NAME, etc.) - Transport Auto-Detection — Automatically selects HTTP/protobuf when endpoint uses port 4318
- Provider Wiring — Automatic TracerProvider, MeterProvider, and LoggerProvider setup
- Custom Sources & Meters — Register application-specific ActivitySources and Meters alongside HVO defaults
- Standard .NET Meters — Opt-in registration of well-known ASP.NET Core and runtime meters
- Provider Callbacks — Advanced
ConfigureTracerProvider/ConfigureMeterProvidercallbacks for custom instrumentation - Backend Support — Jaeger, Zipkin, Grafana Tempo, Honeycomb, Dynatrace, New Relic, Splunk, Elastic, Prometheus
Installation
dotnet add package HVO.Enterprise.Telemetry.OpenTelemetry
Quick Start
using HVO.Enterprise.Telemetry.OpenTelemetry;
services.AddTelemetry(options => { options.ServiceName = "MyService"; });
services.AddOpenTelemetryExport(options =>
{
options.ServiceName = "MyWebApi";
options.ServiceVersion = "1.0.0";
options.Endpoint = "http://otel-collector:4318"; // auto-detects HTTP/protobuf
// Export traces, metrics, and logs
options.EnableTraceExport = true;
options.EnableMetricsExport = true;
options.EnableLogExport = true;
// Register standard .NET meters (ASP.NET Core, Kestrel, System.Net.Http, etc.)
options.EnableStandardMeters = true;
// Register custom application sources and meters
options.AdditionalActivitySources.Add("MyApp");
options.AdditionalMeterNames.Add("MyApp.Metrics");
// Advanced: add ASP.NET Core and HttpClient instrumentation via callbacks
options.ConfigureTracerProvider = builder =>
{
builder.AddAspNetCoreInstrumentation();
builder.AddHttpClientInstrumentation();
};
});
Or configure entirely from environment variables:
export OTEL_EXPORTER_OTLP_ENDPOINT=http://otel-collector:4317
export OTEL_SERVICE_NAME=MyService
export OTEL_RESOURCE_ATTRIBUTES=deployment.environment=production,team=platform
services.AddOpenTelemetryExportFromEnvironment();
Transport Auto-Detection
When the configured endpoint uses a well-known port, the transport protocol is inferred automatically:
| Port | Protocol | Notes |
|---|---|---|
| 4317 | gRPC (default) | No change needed |
| 4318 | HTTP/protobuf | Auto-detected |
| Other | gRPC (default) | Set Transport explicitly if needed |
Auto-detection only applies when Transport has not been explicitly set.
Target Framework
- .NET Standard 2.0 (compatible with .NET Framework 4.8+ and .NET Core 2.0+)
Documentation
See the HVO.Enterprise documentation for full usage guides.
License
MIT — see LICENSE for details.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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 was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- HVO.Enterprise.Telemetry (>= 1.0.3)
- Microsoft.Extensions.DependencyInjection (>= 10.0.3)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.3)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.3)
- Microsoft.Extensions.Options (>= 10.0.3)
- OpenTelemetry.Exporter.OpenTelemetryProtocol (>= 1.15.0)
- OpenTelemetry.Extensions.Hosting (>= 1.15.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
v1.1.1: Update OpenTelemetry SDK dependencies from 1.9.0 to 1.15.0; change default transport from gRPC to HTTP/Protobuf (gRPC deprecated on netstandard2.0); default endpoint changed from localhost:4317 to localhost:4318.