Orleans génère ses statistiques et métriques de runtime via l’interface ITelemetryConsumer. L’application peut inscrire un ou plusieurs consommateurs de télémétrie pour leurs silos et clients, afin de recevoir les statistiques et les métriques que le runtime Orleans publie régulièrement. Il peut s’agir de consommateurs pour des solutions d’analytique de télémétrie populaires ou des solutions personnalisées pour d’autres destination et usage. Trois consommateurs de télémétrie sont actuellement inclus dans le code base d’Orleans.
Ils sont publiés en tant que packages NuGet distincts :
Microsoft.Orleans.OrleansTelemetryConsumers.Counters pour la publication dans les compteurs de performances Windows. Le runtime Orleans met continuellement à jour un certain nombre d’entre eux. L’outil CounterControl.exe, inclus dans le package NuGet Microsoft.Orleans.CounterControl, permet d’inscrire les catégories de compteurs de performances nécessaires. Il doit s’exécuter avec des privilèges élevés. Les compteurs de performances peuvent être surveillés à l’aide de l’un quelconque des outils de monitoring standard.
Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic, pour la publication dans New Relic.
Pour configurer votre silo et votre client pour utiliser les consommateurs de télémétrie, le code de configuration du silo ressemble à ceci :
C#
var siloHostBuilder = new HostBuilder()
.UseOrleans(c =>
{
c.AddApplicationInsightsTelemetryConsumer("INSTRUMENTATION_KEY");
});
Le code de configuration du client ressemble à ceci :
C#
var clientBuilder = new ClientBuilder();
clientBuilder.AddApplicationInsightsTelemetryConsumer("INSTRUMENTATION_KEY");
var telemetryConfiguration = TelemetryConfiguration.CreateDefault();
var siloHostBuilder = new HostBuilder()
.UseOrleans(c =>
{
c.AddApplicationInsightsTelemetryConsumer(telemetryConfiguration);
});
Le code de configuration du client ressemble à ceci :
C#
var clientBuilder = new ClientBuilder();
var telemetryConfiguration = TelemetryConfiguration.CreateDefault();
clientBuilder.AddApplicationInsightsTelemetryConsumer(telemetryConfiguration);
Découvrez l’observabilité et comment l’implémenter dans une application native cloud. Utilisez des packages OpenTelemetry pour générer des journaux, des métriques et des données de suivi et analyser les données dans Application Insights et des applications tierces.