---
name: jabrena/181-java-observability-logging
source: https://app.decimal.ai/s/jabrena-181-java-observability-logging@1/SKILL.md
source_sha256: 5d9277dbfc59
---

# Java Logging Best Practices

Implement effective Java logging following standardized frameworks, meaningful log levels, core practices (parameterized logging, exception handling, no sensitive data), explicit correlation context, flexible configuration, security-conscious logging, monitoring, and alerting.

**What is covered in this Skill?**

- Standardized framework selection: SLF4J facade with Logback or Log4j2
- Meaningful and consistent log levels: ERROR, WARN, INFO, DEBUG, TRACE
- Core practices: parameterized logging, proper exception handling, avoiding sensitive data
- Configuration: environment-specific (logback.xml, log4j2.xml), output formats, log rotation
- Security: mask sensitive data, control log access, secure transmission, GDPR/HIPAA compliance
- Log monitoring and alerting: centralized aggregation (ELK, Splunk, Loki), automated alerts

**Scope:** The reference is organized by examples (good/bad code patterns) for each core area. Apply recommendations based on applicable examples.

## Constraints

Before applying any logging recommendations, ensure the project compiles. Compilation failure is a blocking condition. After applying improvements, run full verification.

- **MANDATORY**: Run `./mvnw compile` or `mvn compile` before applying any change
- **SAFETY**: If compilation fails, stop immediately — do not proceed until resolved
- **VERIFY**: Run `./mvnw clean verify` or `mvn clean verify` after applying improvements
- **BEFORE APPLYING**: Read the reference for detailed good/bad examples, constraints, and safeguards for each logging pattern

## When to use this skill

- Improve logging
- Apply logging
- Refactor logging
- Add logging support
- Review SLF4J structured logging in Java code

## Workflow

1. **Compile project before logging changes**

Run `./mvnw compile` or `mvn compile` and stop immediately if compilation fails.

2. **Read logging reference and assess current observability**

Read `references/181-java-observability-logging.md` and evaluate framework usage, log levels, sensitive-data handling, and config gaps.

3. **Apply logging and observability improvements**

Implement selected framework/configuration/practice changes, including secure logging and monitoring integration where applicable.

4. **Verify with full build**

Run `./mvnw clean verify` or `mvn clean verify` after applying improvements.

## Reference

For detailed guidance, examples, and constraints, see [references/181-java-observability-logging.md](references/181-java-observability-logging.md).