Understanding Health Bot’s Logging Custom Dimensions
Microsoft Health Bot has the ability to emit custom logging into customer supplied Application Insights resource using customer’s instrumentation key. See here, for more details. There is also the ability to emit events programmatically inside the scenario’s “action” step. For Example:
When this code runs, it will emit a custom event that can be viewed using Application Insights viewer. It will contain the payload of this specific call inside the Custom Dimensions property of the event.
Event name: As specified in the session.logCustomEvent call
Custom Dimensions properties:
callstack: The full stack of the scenarios in case there are scenarios that call other scenarios
channelId: Chat channel in which this event happened. eg. Web chat, Teams, IVR etc…
conv_id: Conversation Id of this conversation session. This is a hashed value, but it can allow the user to track the history of a specific session. Note however that the SALT value creating this hash is being replaced daily.
correlation_id: It’s an internal id that uniquely identifies this API call as it goes through our APIM (API Management) resource. The customer can give this id to the support engineer to assist debugging by the service team.
dialogName: Scenario Id that emitted this event.
eventId: Unique identifier of this logging event.
locale: The client’s locale while emitting this event. Client can switch locales mid conversation.
offerid: azurehealthbot
payload: The custom payload (JSON format) passed by this specific call.
region: The deployment region of this Health Bot
speaker: The speaker of this event. Can be either “bot” or “user”
stepid: Internal unique id of this “action” step that emitted the event. If you have several such action step in one scenario, it can be a bit difficult to tell which made this call.
To solve this, you can select this scenario and press the “export” button in the toolbar. This will download the scenario in JSON format where you can locate the “action” step and retrieve its id field.
stepType: The step type that emitted this event. Any step with JavaScript editor can be used to emit the custom event.
tenantId/tenantName: Unique name and id you the customer
user_id: Hash value of the end user emitting the event. You can track the events of a specific user throughout the conversation using this id. Note however that the SALT value creating this hash is being replaced daily.
Microsoft Health Bot has the ability to emit custom logging into customer supplied Application Insights resource using customer’s instrumentation key. See here, for more details. There is also the ability to emit events programmatically inside the scenario’s “action” step. For Example:
When this code runs, it will emit a custom event that can be viewed using Application Insights viewer. It will contain the payload of this specific call inside the Custom Dimensions property of the event.
Event name: As specified in the session.logCustomEvent call
Custom Dimensions properties:
callstack: The full stack of the scenarios in case there are scenarios that call other scenarios
channelId: Chat channel in which this event happened. eg. Web chat, Teams, IVR etc…
conv_id: Conversation Id of this conversation session. This is a hashed value, but it can allow the user to track the history of a specific session. Note however that the SALT value creating this hash is being replaced daily.
correlation_id: It’s an internal id that uniquely identifies this API call as it goes through our APIM (API Management) resource. The customer can give this id to the support engineer to assist debugging by the service team.
dialogName: Scenario Id that emitted this event.
eventId: Unique identifier of this logging event.
locale: The client’s locale while emitting this event. Client can switch locales mid conversation.
offerid: azurehealthbot
payload: The custom payload (JSON format) passed by this specific call.
region: The deployment region of this Health Bot
speaker: The speaker of this event. Can be either “bot” or “user”
stepid: Internal unique id of this “action” step that emitted the event. If you have several such action step in one scenario, it can be a bit difficult to tell which made this call.To solve this, you can select this scenario and press the “export” button in the toolbar. This will download the scenario in JSON format where you can locate the “action” step and retrieve its id field.
stepType: The step type that emitted this event. Any step with JavaScript editor can be used to emit the custom event.
tenantId/tenantName: Unique name and id you the customer
user_id: Hash value of the end user emitting the event. You can track the events of a specific user throughout the conversation using this id. Note however that the SALT value creating this hash is being replaced daily.