Skip to content

docs(exception-metadata): register the .NET runtime and ASP.NET Core capture sources - #218

Draft
posthog[bot] wants to merge 1 commit into
mainfrom
posthog/register-dotnet-exception-sources
Draft

posthog[bot] wants to merge 1 commit into
mainfrom
posthog/register-dotnet-exception-sources

Conversation

@posthog

@posthog posthog Bot commented Nov 13, 2026

Copy link
Copy Markdown
Contributor

Why

The SDK watcher loop found drift between the exception-event-metadata spec and the SDKs. The canonical $exception_source table fixes the first-party value for each capture boundary so two SDKs cannot name the same boundary differently — but it listed no .NET value at all, and posthog-dotnet now emits three.

Source change

  • posthog-dotnet#356 — adds opt-in runtime capture (PostHogOptions.CaptureUnhandledExceptions, default false) emitting dotnet.appdomain_unhandled_exception and dotnet.task_scheduler_unobserved_task_exception, and has the ASP.NET Core request-context middleware emit aspnetcore.request_context_middleware for both an escaping failure and one a downstream error handler consumed. The PR names this spec as the contract it follows.

What changed

Change 2026-11-13-register-dotnet-exception-sources, applied and archived in this PR:

  • Adds three rows to the canonical first-party $exception_source table.
  • No new scenario: level, category and handled state for these boundaries are already fixed by the capture-boundary metadata table, so this is a registry extension only.

Naming rationale is in design.md — aspnetcore.* for the framework integration (matching django.middleware / rails.middleware), dotnet.* for the two CLR hooks, kept separate because their handled/level outcomes differ.

Uncertainty

None material. The convention clause already permitted these values, so no SDK becomes non-conformant either way; this only records them.

Touches the same table as the open #196 and #209 (Ruby rows), so expect a trivial merge conflict if those land first.


Created with PostHog Desktop

🤖 Generated with Claude Code

…capture sources

posthog-dotnet#356 ships opt-in runtime exception capture and the ASP.NET Core request-context middleware, emitting three $exception_source values the canonical registry did not list.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Generated-By: PostHog Desktop
Task-Id: ceb308d7-ee12-4fcc-8c48-2523e744421b
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants