スキル一覧に戻る
paunchygent

structlog-logging-specialist

by paunchygent

Teacher-first Script Hub for running curated, upload-based tools.

0🍴 0📅 2026年1月25日
GitHubで見るManusで実行

SKILL.md


name: structlog-logging-specialist description: Configure and use Structlog for structured logging in HuleEdu services. Guides correlation context propagation, async-safe logging, and integration with error handling. Integrates with Context7 for latest Structlog documentation.

Structlog Logging Specialist

Compact skill for implementing structured logging with Structlog in HuleEdu services.

When to Use

Activate when the user:

  • Needs to configure Structlog for a new or existing service
  • Wants to propagate correlation IDs through logs
  • Asks about async-safe context variables
  • Needs to integrate logging with error handling
  • Wants to understand production vs development logging
  • Mentions Structlog, structured logging, correlation context, or log context
  • Needs to bind context variables to logs

Core Capabilities

  • Structlog Configuration: Production (JSON) vs Development (colored console) setup
  • Correlation Propagation: HTTP request → logs, Kafka events → logs, cross-service tracing
  • Context Variables: Async-safe context binding with bind_contextvars
  • Logger Creation: Service-specific logger instances
  • Event Logging: Structured logging for Kafka event processing
  • Error Integration: Automatic correlation context in error handlers
  • JSON Output: Production-ready JSON logs for Loki aggregation
  • Context7 Integration: Fetch latest Structlog documentation

Quick Workflow

  1. Configure Structlog at service startup with environment-specific settings
  2. Create logger instances for modules/components
  3. Bind correlation context at request/event boundaries
  4. Log with structured key-value pairs
  5. Clear context when done (async boundaries)
  6. Verify JSON output in production logs

Configuration Pattern

from huleedu_service_libs.logging_utils import configure_service_logging

# In app.py or main startup
configure_service_logging(
    service_name="spellchecker_service",
    environment=settings.ENVIRONMENT,  # "production" or "development"
    log_level=settings.LOG_LEVEL,      # "INFO", "DEBUG", etc.
)

Logger Usage Pattern

from huleedu_service_libs.logging_utils import create_service_logger

# Create logger for module
logger = create_service_logger("spellchecker_service.event_processor")

# Log with context
logger.info(
    "Processing event",
    correlation_id=str(correlation_id),
    event_id=str(event_id),
    essay_id=essay_id,
)

Context Binding Pattern

from structlog.contextvars import bind_contextvars, clear_contextvars

# Bind context at request/event boundary
bind_contextvars(
    correlation_id=str(envelope.correlation_id),
    event_id=str(envelope.event_id),
    event_type=envelope.event_type,
)

# All logs now include bound context automatically
logger.info("Processing started")  # Includes correlation_id, event_id, event_type

# Clear when done
clear_contextvars()

Reference Documentation

  • Detailed Configuration & Patterns: See reference.md in this directory
  • Real-World Logging Examples: See examples.md in this directory
  • Logging Library: /libs/huleedu_service_libs/src/huleedu_service_libs/logging_utils.py
  • Correlation Utilities: /libs/huleedu_service_libs/src/huleedu_service_libs/error_handling/correlation.py

スコア

総合スコア

60/100

リポジトリの品質指標に基づく評価

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

レビュー

💬

レビュー機能は近日公開予定です