Skip to content

C# Kernel: Add End-to-End Telemetry #1651

@evchaki

Description

@evchaki

Leverage ILogger with Azure Monitor (AppInsights) to send custom telemetry for the following:

  1. Ask (disabled by default) – the actual Ask (text) coming into the Kernel from the application (example: “Create an email to my boss with a summarization of this ......” this will be important in Dev and maybe UAT/test environments. But for PII in production it should be disabled

  2. Planner (enabled by default) – this is the planner step (either using one of our planners or if the developer hard coded in a plan
    a. Ideal information to store here: Execution time, Model used for planner, success state (Success / Failed), Plan returned, total tokens used

  3. Steps executed for the returned plan (enabled by default)
    a. Ideal information to store here: Plugin executed, execution time, success state (Success / Failed), Tokens used, Model used, Plan this was run from

  4. Kernel Errors throughout the process
    a. Critical, Failures, Warnings – (enabled by default)
    b. Non-fatal (disabled by default)

### Tasks
- [x] Telemetry for Ask
- [x] Telemetry for Planner
- [x] Telemetry for plan execution
- [x] Telemetry for Kernel errors
- [x] Samples and demos with telemetry usage

Metadata

Metadata

Assignees

Labels

.NETIssue or Pull requests regarding .NET codekernelIssues or pull requests impacting the core kernelsk team issueA tag to denote issues that where created by the Semantic Kernel team (i.e., not the community)

Type

No type

Projects

Status

Sprint: Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions