将nginx和其他应用程序的日志发送到sentry。

SentryLogs的Python项目详细描述


Build statusCode healthPython versionsSoftware license

岗哨日志允许您将日志发送到岗哨。只有nginx错误日志是 当前支持,但扩展库以支持更多日志文件 是有计划的。

工作原理

要安装sentrylogs您可以使用pip或easy_install:

$ pip install sentrylogs
$ easy_install sentrylogs

这将安装模块并提供新的控制台命令:

$ sentrylogs -h

usage: sentrylogs [-h][--sentryconfig SENTRYCONFIG][--sentrydsn SENTRYDSN][--daemonize][--follow FOLLOW][--nginxerrorpath NGINXERRORPATH]

Send logs to Django Sentry.

optional arguments:
  -h, --help            show this help message and exit
  --sentryconfig SENTRYCONFIG, -c SENTRYCONFIG
                        A configuration file (.ini, .yaml) of some Sentry
                        integration to extract the Sentry DSN from
  --sentrydsn SENTRYDSN, -s SENTRYDSN
                        The Sentry DSN string (overrides -c)
  --daemonize, -d       Run this script in background
  --follow FOLLOW, -f FOLLOW
                        Which logs to follow, default ALL
  --nginxerrorpath NGINXERRORPATH, -n NGINXERRORPATH
                        Nginx error log path

哨兵DSN

我们需要提供一个哨兵DSN来向哨兵服务器发送消息。在那里 有3个选项可供选择:

  1. 使用--sentryconfig命令行参数读取配置 您的Sentry integration,或
  2. 使用--sentrydsn命令行参数直接指定DSN,或
  3. 提供环境变量。
$ sentrylogs --sentryconfig /opt/myapp/config/pyramid.ini
$ sentrylogs --sentrydsn 'protocol://public:secret@example.com/#'
$ exportSENTRY_DSN='protocol://public:secret@example.com/#'&& sentrylogs

日志文件位置

默认情况下,sentrylogs将假定nginx日志位于/var/log/nginx/error.log。 您可以使用--nginxerrorpath参数更改此值。

作为守护进程运行

如果使用--daemonize,则该命令将对自身进行后台监控并在 背景。

如何贡献

open an issue讨论一下你的a pull request计划。之后 编写代码确保您的更改在推送之前通过我们的质量门。

$ tox
$ python setup.py clean

请写测试!测试覆盖率仍然很低,代码质量需要 改进。请帮助添加测试与您的每一个贡献!

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
ArrayList中实体对象上的JAVA泛型   带Redis的爪哇芹菜vs单用Redis   java在设备面向横向时隐藏标题栏/通知栏   java JXTreeTable:如何使用ComponentProvider为一列设置渲染器   java创建异常的成本与记录异常的成本相比   java在方法参数中使用setter传递新对象   java在一个类中的方法与另一个类中的方法交互时遇到问题   java如何迭代2个大小相等的ArrayList   Java getDesktop()。open在Windows中工作,但在Mac中不工作   从tomcat切换到jetty后的java“无法启动嵌入式容器”,Spring引导   java如何使用void方法   java如何在解组时在JAXB的ValidationEventHandler中获取节点值?   如何使用Akka Java API创建不响应的TCP接收器   JavaScriptjQuery在java中将记录上传到数据库时的进度条   如何在重新绘制时在java小程序中显示上一个图像