kora-telemetry-logginglisted
Install: claude install-skill kora-projects/kora-skills
# Kora Telemetry Logging
> **Kora sub-skill — obey the [kora-v1 meta rules](../../SKILL.md) on every task:** **R0** ensure `.kora-agent/` docs+examples are cloned · **R1** read this sub-skill before writing code · **R2** Kora APIs only — no Spring/Micronaut/Quarkus, no invented annotations or config keys · **R3** journal any incorrect Kora usage. Add comments/Javadoc only if asked.
Kora uses `slf4j-api` as the logging facade for the whole framework; the recommended
implementation is Logback via `LogbackModule`. On top of SLF4J, Kora adds structured
arguments, a structured `MDC`, config-driven log levels, and the `KoraAsyncAppender`
for non-blocking output that correctly propagates structured MDC.
## When to use
- Add Logback to a Kora service and pick text vs JSON output.
- Set per-package log levels from config (`logging.levels`) instead of only `logback.xml`.
- Enable per-module telemetry logging (`*.telemetry.logging.enabled`).
- Attach structured key/values to log records (`StructuredArgument`, Kora `MDC`).
- Log method arguments/results declaratively with `@Log`, or enrich MDC with `@Mdc`.
## Source of truth
| Topic | Path |
|-------|------|
| SLF4J / Logback / structured logs / MDC | `.kora-agent/kora-docs/mkdocs/docs/en/documentation/logging-slf4j.md` |
| `@Log` / `@Mdc` aspects | `.kora-agent/kora-docs/mkdocs/docs/en/documentation/logging-aspect.md` |
| End-to-end observability guide | `.kora-agent/kora-docs/mkdocs/docs/en/guides/observability.md` |
| Example ap