Я попытался добавить пользовательскую телеметрию для документов (https://docs.microsoft.com/en-us/azure/bot-service/bot-builder-telemetry?view=azure-bot-service-4.0).
Я что-то упустил, потому что не могу найти свое пользовательское событие в журналах App Insights.
Я пытался взаимодействовать с ботом и искать в журналах App Insights «VeryImportantProperty» и «VeryImportantValue»
Я написал этот класс:
public class TelemetryMiddleware : TelemetryLoggerMiddleware
{
public TelemetryMiddleware(IBotTelemetryClient telemetryClient, bool logPersonalInformation)
: base(telemetryClient, logPersonalInformation)
{
}
protected override async Task OnReceiveActivityAsync(Activity activity, CancellationToken cancellation)
{
Dictionary<string, string> propertyItems = new Dictionary<string, string>
{
{"VeryImportantProperty", "VeryImportantValue" }
};
var properties = await FillReceiveEventPropertiesAsync(activity, propertyItems);
TelemetryClient.TrackEvent(TelemetryLoggerConstants.BotMsgReceiveEvent, properties);
}
}
Я добавил его в startup.cs как сервис, доступный для инъекций:
services.AddSingleton<IMiddleware, TelemetryMiddleware>();
Я также добавил все остальные элементы, названные в статье, как инъекционные сервисы.
Я развернул бота и взаимодействовал с ним, но не могу найти свое VeryImportantValue или свойство даже после полного поиска в моих журналах App Insights.
Я уверен, что что-то упустил, но из документов я не могу определить, что это.
Есть идеи или указатели в правильном направлении?