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) |
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 is done via AppInsights Traces & default AppInsights logs and it is mainly used to be able to analyze application errors.
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 |
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! |