Delen via


Orleans-logboeken

Orleans maakt gebruik van Microsoft.Extensions.Logging voor alle silo- en clientlogboeken. Zie Logboekregistratie in .NET voor meer informatie.

Runtimebewaking

Orleans voert de runtimestatistieken en metrische gegevens uit via de ITelemetryConsumer interface. De toepassing kan een of meer telemetriegebruikers registreren voor hun silo's en clients, om statistieken en metrische gegevens te ontvangen die de Orleans-runtime periodiek publiceert. Dit kunnen consumenten zijn voor populaire oplossingen voor telemetrieanalyse of aangepaste oplossingen voor elk ander doel en doel. Momenteel zijn er drie telemetriegebruikers opgenomen in de Codebase van Orleans.

Ze worden uitgebracht als afzonderlijke NuGet-pakketten:

  • Microsoft.Orleans.OrleansTelemetryConsumers.AIvoor publiceren naar Azure-toepassing Insights.

  • Microsoft.Orleans.OrleansTelemetryConsumers.Countersvoor het publiceren naar Windows prestatiemeteritems. De Orleans-runtime werkt er voortdurend een aantal bij. Het hulpprogrammaCounterControl.exe , dat is opgenomen in het NuGet-pakket, helpt bij het Microsoft.Orleans.CounterControl registreren van de benodigde prestatiemeteritemscategorieën. Deze moet worden uitgevoerd met verhoogde bevoegdheden. De prestatiemeteritems kunnen worden bewaakt met behulp van een van de standaardbewakingshulpprogramma's.

  • Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic, voor publicatie naar New Relic.

Als u uw silo en client wilt configureren voor het gebruik van telemetriegebruikers, ziet de siloconfiguratiecode er als volgt uit:

var siloHostBuilder = new HostBuilder()
    .UseOrleans(c =>
    {
        c.AddApplicationInsightsTelemetryConsumer("INSTRUMENTATION_KEY");
    });

Clientconfiguratiecode ziet er als volgt uit:

var clientBuilder = new ClientBuilder();
clientBuilder.AddApplicationInsightsTelemetryConsumer("INSTRUMENTATION_KEY");

Als u een aangepaste gedefinieerde TelemetryConfiguration code wilt gebruiken (die kan bestaanTelemetryProcessorsTelemetrySinks, enzovoort), ziet de configuratiecode van de silo er als volgt uit:

var telemetryConfiguration = TelemetryConfiguration.CreateDefault();
var siloHostBuilder = new HostBuilder()
    .UseOrleans(c =>
    {
        c.AddApplicationInsightsTelemetryConsumer(telemetryConfiguration);
    });

Clientconfiguratiecode ziet er als volgt uit:

var clientBuilder = new ClientBuilder();
var telemetryConfiguration = TelemetryConfiguration.CreateDefault();
clientBuilder.AddApplicationInsightsTelemetryConsumer(telemetryConfiguration);