Agent skill

logback-config-rfc-27

RFC-27 compliant static Logback configuration for Java services. Covers logback.xml structure, appenders, encoders, and deployment-specific configuration. Use when setting up or reviewing logging configuration in Java services.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/logback-config-rfc-27

Metadata

Additional technical details for this skill

tags
java logging rfc-27 logback configuration
version
1.0.0
category
observability
technology
java

SKILL.md

Logback Configuration (RFC-27)

RFC-27 compliant static Logback configuration for Java services.

When to use this skill

  • Setting up logging configuration for new Java services
  • Reviewing or updating logback.xml configuration
  • Configuring environment-specific logging
  • Setting up log file rotation and retention
  • Configuring appenders for different outputs (console, file, JSON)

Skill Contents

Sections

  • When to use this skill (L24-L31)
  • Quick Start (L52-L90)
  • Configuration Structure (L91-L115)
  • Appender Types (L116-L134)
  • Environment Configuration (L135-L154)
  • References (L155-L160)
  • Related Rules (L161-L164)
  • Related Skills (L165-L170)

Available Resources

📚 references/ - Detailed documentation

  • configuration patterns

Quick Start

1. Create logback-spring.xml

Place in src/main/resources/logback-spring.xml:

xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds">
    <include resource="org/springframework/boot/logging/logback/defaults.xml"/>

    <!-- Console appender for local development -->
    <springProfile name="local">
        <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
            <encoder>
                <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
            </encoder>
        </appender>
        <root level="INFO">
            <appender-ref ref="CONSOLE"/>
        </root>
    </springProfile>

    <!-- JSON appender for production -->
    <springProfile name="!local">
        <appender name="JSON" class="ch.qos.logback.core.ConsoleAppender">
            <encoder class="net.logstash.logback.encoder.LogstashEncoder"/>
        </appender>
        <root level="INFO">
            <appender-ref ref="JSON"/>
        </root>
    </springProfile>
</configuration>

2. Do NOT Commit logback.xml to Git

Per RFC-27, logback.xml should NOT be in version control. Use logback-spring.xml instead, which supports Spring profiles.

Configuration Structure

Required Elements

Element Purpose
<configuration> Root element with optional scan attributes
<appender> Defines output destination
<encoder> Formats log messages
<root> Default logging level

Spring Profile Integration

Use <springProfile> to apply configuration conditionally:

xml
<springProfile name="production">
    <!-- Production-specific config -->
</springProfile>

<springProfile name="!production">
    <!-- Non-production config -->
</springProfile>

Appender Types

Appender Use Case
ConsoleAppender Standard output (container logs)
RollingFileAppender File with rotation
AsyncAppender Non-blocking wrapper

Console Appender (Production)

xml
<appender name="JSON" class="ch.qos.logback.core.ConsoleAppender">
    <encoder class="net.logstash.logback.encoder.LogstashEncoder">
        <includeMdcKeyName>traceId</includeMdcKeyName>
        <includeMdcKeyName>spanId</includeMdcKeyName>
    </encoder>
</appender>

Environment Configuration

Log Levels per Environment

Environment Root Level Notes
local DEBUG Verbose for development
development INFO Standard logging
staging INFO Match production
production INFO Minimize noise

Logger Overrides

xml
<!-- Reduce noise from specific libraries -->
<logger name="org.apache.kafka" level="WARN"/>
<logger name="org.springframework.web" level="INFO"/>
<logger name="com.bitso" level="DEBUG"/>

References

Reference Description
references/configuration-patterns.md Detailed configuration examples

Related Rules

  • java-structured-logs - Structured logging standards (RFC-34)

Related Skills

Skill Purpose
structured-logs-rfc-34 Structured logging format
dynamic-loglevel-rfc-27 Runtime log level control

Expand your agent's capabilities with these related and highly-rated skills.

Didn't find tool you were looking for?

Be as detailed as possible for better results