Logging
Use structured logging for consistent, searchable diagnostics across steps.
MDC Context
TPF does not set MDC values automatically. If you want MDC-based correlation, attach pipeline identifiers in your code (or via a custom interceptor/filter) so logs can be correlated across services:
java
MDC.put("pipelineId", pipelineId);
MDC.put("stepName", stepName);Trace Correlation
When OpenTelemetry is enabled, prefer including trace/span IDs in log format so APM and logs link correctly.
JSON Logging
Prefer JSON logs in production to integrate with log aggregation.
properties
quarkus.log.console.json=true
quarkus.log.console.json.pretty-print=falseLog Levels
- DEBUG: Development diagnostics
- INFO: Business events and step completion
- WARN: Recoverable issues
- ERROR: Failures and retries
Logging Standards
- Avoid logging full payloads
- Mask secrets and PII
- Keep messages consistent across steps
- Avoid per-item logs in high-cardinality flows