Créer des traces et métriques personnalisées
L’instrumentation Zero-code configure un TracerProvider
et un MeterProvider
afin que vous puissiez ajouter votre propre instrumentation manuelle. En
utilisant à la fois l’instrumentation automatique et manuelle, vous pouvez mieux
instrumenter la logique et les fonctionnalités de vos applications, clients et
frameworks.
Traces
Pour créer vos traces personnalisées manuellement, suivez ces étapes :
Ajoutez la dépendance
System.Diagnostics.DiagnosticSource
à votre projet :<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="8.0.0" />
Créez une instance
ActivitySource
:private static readonly ActivitySource RegisteredActivity = new ActivitySource("Examples.ManualInstrumentations.Registered");
Créez une
Activity
. Optionnellement, définissez des tags :using (var activity = RegisteredActivity.StartActivity("Main")) { activity?.SetTag("foo", "bar1"); // votre logique pour l'activité Main }
Enregistrez votre
ActivitySource
dans OpenTelemetry.AutoInstrumentation en définissant la variable d’environnementOTEL_DOTNET_AUTO_TRACES_ADDITIONAL_SOURCES
. Vous pouvez définir la valeur soit àExamples.ManualInstrumentations.Registered
soit àExamples.ManualInstrumentations.*
, ce qui enregistre tout le préfixe.
Une Activity
créée pour
l’ActivitySource
NonRegistered.ManualInstrumentations
n’est pas gérée par
l’instrumentation Zero-code OpenTelemetry.
Métriques
Pour créer vos métriques personnalisées manuellement, suivez ces étapes :
Ajoutez la dépendance
System.Diagnostics.DiagnosticSource
à votre projet :<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="8.0.0" />
Créez une instance
Meter
:using var meter = new Meter("Examples.Service", "1.0");
Créez un
Instrument
:var successCounter = meter.CreateCounter<long>("srv.successes.count", description: "Number of successful responses");
Mettez à jour la valeur de l’
Instrument
. Optionnellement, définissez des tags :successCounter.Add(1, new KeyValuePair<string, object?>("tagName", "tagValue"));
Enregistrez votre
Meter
avec OpenTelemetry.AutoInstrumentation en définissant la variable d’environnementOTEL_DOTNET_AUTO_METRICS_ADDITIONAL_SOURCES
:OTEL_DOTNET_AUTO_METRICS_ADDITIONAL_SOURCES=Examples.Service
Vous pouvez définir la valeur soit à
Examples.Service
soit àExamples.*
, ce qui enregistre tout le préfixe.
Lectures complémentaires
Feedback
Cette page est-elle utile?
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!