Журналы Orleans
Orleans использует Microsoft. Extensions. Logging для всех журналов приемников и клиентов. Дополнительные сведения см. в разделе Ведение журнала в .NET.
Мониторинг среды выполнения
Orleans выводит статистику времени выполнения и метрики через ITelemetryConsumer интерфейс. Приложение может зарегистрировать одного или нескольких потребителей телеметрии для своих приемников и клиентов, чтобы получить статистику и метрики, которые периодически публикуются средой выполнения Orleans. Это могут быть потребители для популярных решений аналитики телеметрии или пользовательские решения для любого другого назначения и назначения. В настоящее время в базу кода Orleans включены три потребителя телеметрии.
они выпускаются в виде отдельных пакетов NuGet:
Microsoft.Orleans.OrleansTelemetryConsumers.AI
для публикации вMicrosoft.Orleans.OrleansTelemetryConsumers.AI
.Microsoft.Orleans.OrleansTelemetryConsumers.Counters
для публикации в Windows счетчики производительности. Среда выполнения Orleans постоянно обновляет несколько элементов. средство CounterControl.exe , которое входит в пакет NuGet, помогает регистрировать необходимые категории счетчиков производительности. Он должен работать с повышенными привилегиями. Мониторинг счетчиков производительности можно осуществлять с помощью любого из стандартных средств мониторинга.Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic
, для публикации вMicrosoft.Orleans.OrleansTelemetryConsumers.NewRelic
.
Чтобы настроить для приемника и клиента использование потребителей телеметрии, код конфигурации приемника данных будет выглядеть следующим образом:
var siloHostBuilder = new HostBuilder()
.UseOrleans(c =>
{
c.AddApplicationInsightsTelemetryConsumer("INSTRUMENTATION_KEY");
});
Код конфигурации клиента выглядит следующим образом:
var clientBuilder = new ClientBuilder();
clientBuilder.AddApplicationInsightsTelemetryConsumer("INSTRUMENTATION_KEY");
Чтобы использовать пользовательское определение TelemetryConfiguration (которое может иметь TelemetryProcessors , TelemetrySinks и т. д.), код конфигурации приемника команд выглядит следующим образом:
var telemetryConfiguration = TelemetryConfiguration.CreateDefault();
var siloHostBuilder = new HostBuilder()
.UseOrleans(c =>
{
c.AddApplicationInsightsTelemetryConsumer(telemetryConfiguration);
});
Код конфигурации клиента выглядит следующим образом:
var clientBuilder = new ClientBuilder();
var telemetryConfiguration = TelemetryConfiguration.CreateDefault();
clientBuilder.AddApplicationInsightsTelemetryConsumer(telemetryConfiguration);