GELF (Graylog Extended Log Format) for Zope
项目描述
GELF (Graylog Extended Log Format) for Zope事件日志
内容
主要功能
将Zope事件日志发送到Graylog而不是文件。
安装
Plone 5.2+ (WSGI)
将eea.graylogger添加到您的buildout eggs部分,并重新运行buildout
[instance] eggs += eea.graylogger event-log-handler = eea.graylogger.GELFHandler event-log-args = ('logs.example.com', 12201) event-log-kwargs = {'level_names': True, 'facility': 'example.com'} access-log-handler = eea.graylogger.GELFHandler access-log-args = ('logs.example.com', 12201) access-log-kwargs = {'facility': 'example.com'}
有关详细信息,请参阅graypy文档。
或者,您可以跳过 -log-args 和 -log-kwargs,并使用环境变量来定义 Graylog 的 host:port 和 facility
[instance] eggs += eea.graylogger event-log-handler = eea.graylogger.GELFHandler access-log-handler = eea.graylogger.GELFHandler
GRAYLOG - Graylog host,或 host:port(例如:GRAYLOG=logs.example.com:12201)
GRAYLOG_FACILITY - Graylog facility(例如:GRAYLOG_FACILITY=example.com)
Plone < 5.2 (非WSGI)
将 eea.graylogger 添加到您的 buildout 的 eggs 部分,并重新运行 buildout。您可以从 https://github.com/eea/eea.graylogger/tree/master/buildouts/plone4 下载示例 buildout
[instance] eggs = ... eea.graylogger zope-conf-imports = eea.graylogger event-log-custom = <graylog> server 172.17.0.18:12201 </graylog>
入门
安装 Graylog 服务器或使用 Graylog2 Docker 镜像
重启 Zope
访问 https://127.0.0.1:9000 查看您的 Zope 日志
配置参数
rabbit - 如果您想使用 GELFRabbitHandler 而不是 GELFHandler,则设置为 True。有关更多详细信息,请参阅 graypy 文档。
GELFHandler
server - graylog 服务器的 host[:port]。
debugging_fields - 如果为 true,则发送调试字段(默认)。
extra_fields - 如果为 true,则将额外的字段发送到 graylog 的日志记录中(默认)。
fqdn - 使用 localhost 的完全限定域名作为源主机(socket.getfqdn())。
localname - 使用指定的主机名作为源主机。
facility - 用指定的值替换 facility。如果指定,则记录.name 将作为日志记录器参数传递。
GELFRabbitHandler
server - RabbitMQ URL(例如:amqp://guest:guest@localhost:5672/%2F)。
exchange - RabbitMQ 交换。默认为 logging.gelf。服务器上必须定义队列绑定,以防止日志消息丢失。
debugging_fields - 如果为 true,则发送调试字段(默认)。
extra_fields - 如果为 true,则将额外的字段发送到 graylog 的日志记录中(默认)。
fqdn - 使用 localhost 的完全限定域名作为源主机 - socket.getfqdn()。
exchange_type - RabbitMQ 交换类型(默认为 fanout)。
localname - 使用指定的主机名作为源主机。
facility - 用指定的值替换 facility。如果指定,则记录.name 将作为日志记录器参数传递。
依赖项
Graylog 服务器
graypy >= 2.1.0
plone.recipe.zope2instance >= 6.5.0
源代码
最新源代码(兼容 Plone 5 / Python 3):https://github.com/eea/eea.graylogger
版权和许可证
原始代码的初始所有者是欧洲环境署(EEA)。版权所有。
EEA Graylogger(原始代码)是免费软件;您可以在自由软件基金会发布的 GNU 通用公共许可证的条款下重新分发和/或修改它;许可证的第二版或(根据您的选择)任何较新版本。
更多详细信息请参阅 docs/License.txt
资助
EEA - 欧洲环境署(EU)
变更日志
2.4 - (2023-06-12)
错误修复:修复测试 [iulianpetchesi 引用 #249331]
2.3 - (2023-03-31)
变更:删除 graypy 锚定 [iulianpetchesi 引用 #249331]
2.2 - (2023-03-31)
变更:更改 setup.py 版本锚定 [iulianpetchesi 引用 #249331]
2.1 - (2023-03-31)
变更:在使用 eea.graylogger 时绕过 Plone 6 错误 [iulianpetchesi 引用 #249331]
2.0 - (2019-11-25)
特性:Python3 / Plone 5.2 / WSGI 支持 [avoinea 引用 #110157]
变更:升级到 graypy 2.1.0 [avoinea 引用 #110157]
变更:删除 chunk_size 选项 [avoinea 引用 #110157]
1.9 - (2019-04-02)
错误修复:修复 Readme unicode/decode 错误 [avoinea]
1.8 - (2019-04-02)
错误修复:固定 graypy 版本 [valipod]
1.7 - (2019-01-28)
Jenkins:添加 sonarqube 步骤 [avoinea 引用 #101552]
变更:更新指向 eea.europa.eu 的 URL 以使用 https:// [alecghica 引用 #95849]
1.6 - (2017-12-12)
变更:将 eeacms/zptlint 替换为 eeacms/plone-test:4 zptlint [avoinea 引用 #90415]
1.5 - (2017-06-15)
错误修复:修复与 graypy 0.2.14+ 一起工作的问题(facility 覆盖) [avoinea 引用 #85963]
1.4 - (2017-05-15)
变更:修复 PyLint 警告和错误 [eduard-fironda 引用 #84949]
1.3 - (2017-04-24)
变更:更新包信息 [eduard-fironda]
1.2 - (2015-10-05)
错误修复:添加实例名称参数到 graylog 的日志条目 [lucas,引用 #28304]
1.1 - (2015-07-06)
错误修复:添加对 amqplib 的硬依赖以修复 GELFRabbitHandler [voineali 引用 #21610]
1.0 - (2015-05-05)
初始版本 [voineali]