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
ActivitySourcedans OpenTelemetry.AutoInstrumentation en définissant la variable d’environnementOTEL_DOTNET_AUTO_TRACES_ADDITIONAL_SOURCES. Vous pouvez définir la valeur soit àExamples.ManualInstrumentations.Registeredsoit à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
Meteravec OpenTelemetry.AutoInstrumentation en définissant la variable d’environnementOTEL_DOTNET_AUTO_METRICS_ADDITIONAL_SOURCES:OTEL_DOTNET_AUTO_METRICS_ADDITIONAL_SOURCES=Examples.ServiceVous pouvez définir la valeur soit à
Examples.Servicesoit à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!