【问题标题】:Python - Sanitize keys in Sentry logging handler (django)Python - 在 Sentry 日志记录处理程序(django)中清理键
【发布时间】:2019-05-23 00:51:52
【问题描述】:

我正在向我的 Django 项目添加一个 Sentry 日志记录处理程序。 我想通过添加清理键和两个处理器来自定义哨兵处理程序:raven.processors.SanitizePasswordsProcessorraven.processors.SanitizeKeysProcessor

有没有办法在日志配置中做到这一点,而无需编写新的处理程序类,用我想要的参数包装 raven.contrib.django.raven_compat.handlers.SentryHandler 类?

这是我的日志配置:

LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
    'x': {
        #'format': '[%(asctime)s #%(process)d] %(levelname)s: %(message)s'
        'format': '%(asctime)s - %(name)s  - %(levelname)s - %(message)s - {%(pathname)s:%(lineno)d}'
    }
},
'handlers': {
    'console': {
        'level': 'DEBUG',
        'class': 'logging.StreamHandler',
        'formatter': 'x'
    },
    'sentry': {
        'level': 'ERROR',
        'class': 'raven.contrib.django.raven_compat.handlers.SentryHandler'
    }
},
'loggers': {
    'django': {
        'level': 'INFO',
        'handlers': ['console', 'sentry'],
        'propagate': True
    },
}

谢谢

【问题讨论】:

    标签: python django logging sentry raven


    【解决方案1】:

    LOGGING 配置是添加这些过滤器的错误位置,并且不会清理 Sentry 事件。

    Client Arguments doc中提到,正确的地方是RAVEN_CONFIG,也在Django设置文件中:

    RAVEN_CONFIG = {
      'dsn': 'https://<key>:<secret>@sentry.io/<project>',
      'sanitize_keys': [
        'keyname1',
        'keyname2',
      ],
      'processors': (
        'raven.processors.SanitizeKeysProcessor',
        'raven.processors.SanitizePasswordsProcessor',
      )
    }
    

    Django 1.4 到 2.0 支持 Raven(请参阅 Django docs)。 Sentry 建议为 Django 2.1 及更高版本使用新的sentry-sdk,并具有Django integration instructions。在Switching to Sentry-Python post 中,有一条评论提到Sentry SDK no longer provides these filters,如果需要,建议写custom filter。默认情况下,send_default_pii parameterFalse 控制记录和发送大量敏感数据,例如过去由这些过滤器控制的 IP 地址、用户详细信息和 cookie。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-10
      • 1970-01-01
      相关资源
      最近更新 更多