跳转到主要内容

光谱-python 是一个用于 Spectrum (devspectrum.com) 的 Python 记录处理程序

项目描述

概述

Spectrum 是一个帮助开发者筛选和检查本地开发或调试过程中的日志的应用程序。它通过 REST API、syslog 或设置为跟踪本地文件来接受记录信息。所有这些记录源都可以根据开发者的当前需求轻松显示或隐藏。

此 Python 包使得将 Python 和/或 Django 的记录推送到 Spectrum 变得非常简单。

Python

为 Spectrum 安装 Python 支持与以下步骤一样简单

$ pip install spectrum-python

设置记录处理程序也非常简单

import logging
from spectrum.handlers import Spectrum

logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)

spectrum = Spectrum('my-logging-sublevel')
logger.addHandler(spectrum)

for i in range(5):
    logger.info("This would be sent as INFO.my-logging-sublevel")
    logger.warn("This would be sent as WARNING.my-logging-sublevel")
    logger.debug("This would be sent as DEBUG.my-logging-sublevel")

选项

url

要使用的 REST API 的 IP 地址和端口号。默认为 ‘http://0.0.0.0:9000’。如果您使用多个 REST API 流,则必须将其覆盖为与您的流关联的正确 Spectrum 端口。

sublevel

为该处理程序可选的子级别。如果未提供,默认为 Spectrum UI 中的 ‘<untitled>’。

Django

要将您的 Django 项目的所有记录定向到 Spectrum,您可以在设置中使用预定义的 FIRE_HOSE 记录配置

# settings.py

from spectrum.django import FIRE_HOSE
LOGGING = FIRE_HOSE

如果您使用 celery,则需要添加一个额外的设置

CELERYD_HIJACK_ROOT_LOGGER = False

您还可以使用 fire_hose 便利方法快速修改任何预构建的记录配置字典

from spectrum.django import fire_hose


LOGGING = fire_hose()

LOGGING = fire_hose(log_db=False)

LOGGING = fire_hose(levels=(
    ('my.overly.verbose.module', 'WARNING'),
    ('some.other.module', 'CRITICAL'),
)

LOGGING = fire_hose(handler_kwargs={'url': '127.0.0.1:12345'})

如果您更喜欢更细粒度的方法,您可以为特定的处理程序进行配置

# settings.py

LOGGING = {
    ...
    'filters': {
        'request_id': {
            '()': 'spectrum.filters.RequestIdFilter'
        }
    },
    'handlers': {
        'myloggername': {
            'level': 'DEBUG',
            'class': 'spectrum.handlers.RestSpectrum',
            'sublevel': 'myloggername',
            'filters': ['request_id']
        }
    }
}

确保您包括 request_id 过滤器以过滤掉光谱自身的请求与其他请求。否则,Python 将记录光谱的请求,而这些日志又会生成自己的光谱请求,导致无限递归。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

spectrum-python-0.9.8.tar.gz (7.5 kB 查看哈希)

上传时间

支持者

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面