Rechercher

PythonReactSEOPDF
GitHub Skill

structured-logging

RFC-34 compliant structured logging standards for Java services. Covers JSON log format, structured arguments, required fields, and Logback configuration. Use when implementing or reviewing logging in Java services.

bitsoex☆ 35 Étoiles du dépôt30 Forks du dépôt

Installation

Suivez les instructions du dépôt pour votre agent. Consultez les fichiers et dépendances avant l’installation.

Voir la source ↗Guides

Instructions

Structured Logging

RFC-34 compliant structured logging standards for Java services.

When to use this skill

  • Implementing logging in new Java services
  • Converting unstructured logs to structured format
  • Reviewing logging practices
  • Configuring Logback for JSON output
  • Adding business context to logs

Skill Contents

Sections
Available Resources

📚 references/ - Detailed documentation


Quick Start

1. Add Dependencies
implementation 'org.springframework.boot:spring-boot-starter-logging'
implementation 'net.logstash.logback:logstash-logback-encoder:${latest_version}'
2. Use Structured Arguments
import static net.logstash.logback.argument.StructuredArguments.kv;

log.info("Transaction processed",
         kv("transaction_id", txn.getId()),
         kv("user_id", user.getId()));

This produces JSON with separate fields for transaction_id and user_id.

Required Fields

All logs must include these fields:

Field Description
@timestamp Log timestamp
message Log message text
logger Logger name
thread_name Thread name
level Log level (INFO, WARN, ERROR, etc.)
dd.service Service name
dd.env Environment
dd.version Service version

Best Practices

  • Add business identifiers (IDs) as separate fields instead of embedding in messages
  • Keep log message text clear and concise
  • Use appropriate log levels consistently
  • Include enough context to understand the event without additional queries
  • Use snake_case for field names
  • For logs containing objects, properly structure them rather than using toString()
Example
// ✅ Good - structured fields
log.info("Order created", kv("order_id", orderId), kv("user_id", userId), kv("amount", amount));

// ❌ Bad - embedded in message
log.info("Order {} created for user {} with amount {}", orderId, userId, amount);

References

Reference Description
references/logging-standards.md Complete RFC-34 implementation guide

Related Rules

  • .cursor/rules/java-structured-logs.mdc - Full logging standards

Related Skills

Skill Purpose
java-standards General Java standards
java-testing Testing log output

Exemples

Consultez les exemples du dépôt source.

Voir la source ↗

Historique source

Date d’indexation
2026-01-20
Mise à jour de l’index
2026-01-28
Branch
main

Les dates concernent ce répertoire. Consultez le dépôt pour l’historique du code.

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!