sentry-setup-logging

📁 getsentry/sentry-agent-skills 📅 Jan 20, 2026
124
总安装量
124
周安装量
#1911
全站排名
安装命令
npx skills add https://github.com/getsentry/sentry-agent-skills --skill sentry-setup-logging

Agent 安装分布

claude-code 102
opencode 93
codex 89
github-copilot 74
cursor 70

Skill 文档

Setup Sentry Logging

Configure Sentry’s structured logging feature.

Invoke This Skill When

  • User asks to “setup Sentry logging” or “capture logs in Sentry”
  • User wants to integrate logging libraries (Pino, Winston, Loguru) with Sentry
  • User asks about Sentry.logger or sentry_sdk.logger

Quick Reference

Platform Min SDK Enable Flag Logger API
JavaScript 9.41.0+ enableLogs: true Sentry.logger.*
Python 2.35.0+ enable_logs=True sentry_sdk.logger.*
Ruby 5.24.0+ config.enable_logs = true Sentry.logger.*

JavaScript Setup

1. Verify SDK version

grep -E '"@sentry/(nextjs|react|node|browser)"' package.json

2. Enable in Sentry.init()

Sentry.init({
  dsn: "YOUR_DSN",
  enableLogs: true,
});

3. Console capture (optional)

integrations: [
  Sentry.consoleLoggingIntegration({ levels: ["warn", "error"] }),
],

4. Use structured logging

Sentry.logger.info("User logged in", { userId: "123" });
Sentry.logger.error("Payment failed", { orderId: "456", amount: 99.99 });

// Template literals (creates searchable attributes)
Sentry.logger.info(Sentry.logger.fmt`User ${userId} purchased ${productName}`);

Third-party integrations

Library Integration Min SDK
Pino Sentry.pinoIntegration() 10.18.0+
Winston Sentry.createSentryWinstonTransport() 9.13.0+
Consola Sentry.createConsolaReporter() 10.12.0+

Python Setup

1. Verify SDK version

pip show sentry-sdk | grep Version

2. Enable in init()

sentry_sdk.init(
    dsn="YOUR_DSN",
    enable_logs=True,
)

3. Stdlib logging capture (optional)

from sentry_sdk.integrations.logging import LoggingIntegration
integrations=[LoggingIntegration(sentry_logs_level=logging.WARNING)]

4. Use structured logging

from sentry_sdk import logger as sentry_logger

sentry_logger.info("User logged in: {user_id}", user_id="123")
sentry_logger.error("Payment failed", order_id="456", amount=99.99)

Loguru integration

from sentry_sdk.integrations.loguru import LoguruIntegration
integrations=[LoguruIntegration(sentry_logs_level=LoggingLevels.WARNING.value)]

Ruby Setup

1. Verify SDK version

bundle show sentry-ruby

2. Enable in init

Sentry.init do |config|
  config.dsn = "YOUR_DSN"
  config.enable_logs = true
  config.enabled_patches = [:logger]  # Optional: capture stdlib Logger
end

3. Use structured logging

Sentry.logger.info("User logged in")
Sentry.logger.error("Payment failed. Order: %{order_id}", order_id: "456")

Log Filtering

JavaScript

beforeSendLog: (log) => log.level === "info" ? null : log,

Python

def before_send_log(log, hint):
    return None if log["severity_text"] == "info" else log

Troubleshooting

Issue Solution
Logs not appearing Verify SDK version, check enableLogs/enable_logs is set
Too many logs Use beforeSendLog to filter, reduce captured levels
Console not captured Add consoleLoggingIntegration to integrations array