User Interactions tracking

In the KBP, the user actions are tracked on the basis of (button click), in addition we provide, the loading times and retention time. For visualization of that data we are using Azure Workbooks because the audience is mainly the KBP team itself.

We currently track three different events in KBP Frontend, which are “route changes”, “page load completion” and “button click actions”.

Event Type key prefix Description
Page Visit AppInsights - customMetric pageVisitTime_ customMetrics
Page load complete AppInsights - customMetric page load competed event customMetrics
Click Action AppInsights -customEvent Mainly [FEATURENAME][AREA][ACTION] (e.g. tariffOptions_bookedOption_declarationOfIntent_confirm)

Custom Event Content

Besides of default AppInsights Event/Metric content, we provide additional data to the events to be able to identify agent and customer. This data helps us identifying bad agent journeys and also to analyze GDPR cases.

Example:

beraterUsername beraterUvpCode beraterVpCode environment kundenummer referenceId route tenant timeToAction
user@enpower.de 15717 ENBW TEST001 2120000595 2120000595 pin 100 13091

Backend logging

Backend logging is done via AppInsights Traces & default AppInsights logs and it is mainly used to be able to analyze application errors.

Queries/Commands Logging

All Queries & Commands are being logged containing complete request and response payload.

Example

trace key payload (Custom Properties request/response) payload (logtrace._message)
command_userholenrequest_request { “Email”: “**@yello.de” } Executing request UserHolenRequest
command_userholenresponse_response { “PowerCloudUser”: { “UserId”: 1111, “UserType”: null, “Email”: “**@yello.de”, “Vorname”: “Maxi”, “Nachname”: “Benutzer 0” }, “IsSuccessful”: true, “ErrorMessage”: "" } Received a response UserHolenResponse after executing request UserHolenRequest

Error logging

We also log all exceptions automatically and some errors explecitly.

Example

trace key payload (Custom Properties request/response) payload (logtrace._message)
create_contract_phone_error Json of create phone dto An error occured creating a phone number for contract 800010819!