如何从BotTelemetryClient.TrackEvent()Microsoft.Bot.Builder

时间:2019-05-28 14:15:46

标签: botframework azure-application-insights

在bot中跟踪事件时,我使用应用程序见解进行脚本记录和一般记录。 但是,在跟踪事件时我没有session_id / conversation id。

根据this信息,我应该始终获取session_id和userId。

session_id在customEvent https://imgur.com/mesxtLw中为空 我的项目基于用于记录的虚拟助手模板。 对于日志记录,我使用TelemetryloggerMiddleware和transcriptloggerMiddleware

我希望会有一个session_id和userid,但是我收到一个空的userid和session_id

这些是我的软件包参考:

  • “ Microsoft.ApplicationInsights” Version =“ 2.9.1”
  • “ Microsoft.ApplicationInsights.AspNetCore” Version =“ 2.6.1”
  • “ Microsoft.Bot.Builder.ApplicationInsights” Version =“ 4.4.4”
  • “ Microsoft.Bot.Builder.Integration.ApplicationInsights.Core” 版本=“ 4.4.4”
  • “ Microsoft.Bot.Builder.Integration.AspNet.Core” Version =“ 4.4.4”

1 个答案:

答案 0 :(得分:0)

如果自动收集未填充必要的属性,则可以通过Telemetry Initializer添加所需属性的值:

  public class MyTelemetryInitializer : ITelemetryInitializer
  {
    public void Initialize(ITelemetry telemetry)
    {
        telemetry.Context.Session.Id = "ConversationIdYouObtainedFromSomeAPI";
    }
  }