logging

Installation
SKILL.md

Logging & Observability

Core Principles

  1. Structured logging with Serilog — Every log entry is a structured event with named properties, not a formatted string. This enables searching, filtering, and alerting. All setup (two-stage bootstrap, AddSerilog(), sinks, enrichers) lives in the serilog skill — that skill's AddSerilog()-over-UseSerilog() guidance is canonical.
  2. OpenTelemetry for distributed tracing — Traces connect requests across services; metrics track system health over time. Full setup lives in the opentelemetry skill.
  3. Health checks for operational readiness — Every service exposes /health endpoints for load balancers and orchestrators. Liveness and readiness are separate questions and separate endpoints.
  4. Correlation IDs for request tracing — Every request gets a unique ID that flows through all log entries and downstream service calls, so one user complaint maps to one filtered log stream.

Patterns

How the Pieces Fit Together

Concern Owner Skill
Structured application logs Serilog (AddSerilog()) serilog
Request summary logging UseSerilogRequestLogging() serilog
Traces + metrics + OTLP export OpenTelemetry SDK opentelemetry
Health endpoints, correlation IDs, log-level strategy This skill logging
Installs
983
GitHub Stars
698
First Seen
Mar 13, 2026
logging — codewithmukesh/dotnet-claude-kit