Riemann的主管事件列表

supermann的Python项目详细描述


http://img.shields.io/pypi/v/supermann.svghttp://img.shields.io/pypi/l/supermann.svghttp://img.shields.io/travis/borntyping/supermann/master.svg

超人监视在Supervisor下运行的进程,并将度量发送到Riemann

用法

超人作为主管事件监听器运行,每次接收到事件时都会发送度量。supermann需要的唯一配置是riemann实例的主机和端口,它可以作为参数或由RIEMANN_HOSTRIEMANN_PORT环境变量提供。

基本用法如下,但如果不在主管下运行,SuperMann将不会启动:

supermann [--log-level=LEVEL] HOST PORT

supermann的管理器配置文件应该如下所示:

[eventlistener:supermann]
command=supermann-from-file /etc/supermann.args
events=PROCESS_STATE,TICK_5

这将从/etc/supermann.args加载supermann的参数,该参数将包含riemann服务器的主机和端口-localhost:5555用作默认值(如果未指定主机或端口):

riemann.example.com 5555

超人做什么

每次收到事件时,超人将收集并发送有关系统和在主管下运行的进程的信息。监听TICK_5PROCESS_STATE事件将每5秒收集并发送一次信息,并且当程序更改状态时。有关详细信息,请参见Supervisor event documentation

supermann被设计为在遇到错误时进行解救,允许主管重新启动它-建议不要在事件侦听器的主管配置中设置autorestart=false。日志被发送到STDERR供主管收集-可以使用--log-level参数控制日志级别。可以使用supervisorctl tail supermann stderr读取日志,也可以在主管的日志目录中查找日志。

supermann-from-file

修改supervisord event listener(link)的配置的问题意味着在supervisord运行时,无法更改用于启动事件侦听器进程的命令。

超人2允许将文件直接命名为参数,以便从中读取更多参数。supermann 3提供了supermann-from-file入口点,该入口点加载包含将传递给主supermann命令的参数的文件。

在不同版本之间升级的最简单方法是重命名supervisord configuration中的eventlistener:supermann部分,然后运行supervisorctl update。这将删除旧的超人实例,并使用新命令启动新实例。supermann-from-file命令从文件中读取一组参数,并用这些参数启动supermann,这样就可以在不重新启动supervisord的情况下更改supermann的配置。

安装

超人可以用pip install supermann安装。建议将其安装在与supervisor相同的python环境中。

supervisor也可以用pip安装,或者可以从您的发行版包管理器安装。安装SuperMann后,将eventlistener部分添加到管理器配置中(默认情况下为/etc/supervisord.conf),然后重新启动管理器。

要求

psutil包使用c扩展,从源代码或使用python包管理器(如pip)安装包需要构建工具。或者,也可以从发行版的存储库(debian和centos上的python-psutil)安装它。超人目前使用非常旧的psutil版本,以便与centos兼容。

超人是在Python2.6上开发和测试的。由于google的protobuf库(因此riemann-client)只与python 2兼容,因此没有为python 3发布它的计划。

更改日志

版本3.0.0

  • 升级到最新版本的psutil2.1.1
  • 替换或更改各种指标
  • argparse替换为click,并对cli进行了改进
  • @file参数语法替换为supermann-from-file
  • 删除了--memmon选项和内存监视插件
  • 添加了有关Read the Docs
  • 的文档
  • 许多其他小的修复和改进

许可证

超人是根据MIT Licence授权的。协议缓冲区定义来自Riemann Java client,该定义是根据Apache Licence授权的。

作者

超人是在DataSift工作时由Sam Clements写的。

https://0.gravatar.com/avatar/8dd5661684a7385fe723b7e7588e91ee?d=https%3A%2F%2Fidenticons.github.com%2Fe83ef7586374403a328e175927b98cac.png&r=x&s=40https://1.gravatar.com/avatar/a3a6d949b43b6b880ffb3e277a65f49d?d=https%3A%2F%2Fidenticons.github.com%2F065affbc170e2511eeacb3bd0e975ec1.png&r=x&s=40

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

推荐PyPI第三方库


热门话题
java读取SSLSocket的最快或最佳方式   JavaGuice向类构造函数注入对象   java类不是抽象的,并且不会覆盖OnClickListener中的抽象方法onClick(视图)   java OpenGL 1.1更改颜色更改以前的颜色?   c#将Java/Android连接到。网络服务   java在节点上生成AES密钥   java Liferay与MarkLogic XDBC数据库集成   java使用静态初始化块来提高性能   java如何在需要不同参数的另一个方法中使用同一类中的方法   音频Java多种声音   Java显式引用转换   java Intellij,如何在maven项目中导入模块   java在什么条件下调用ELResolver的setValue方法?   java在beanshell中计算代码字符串并获取beanshell解释器返回的值   javascript将音频文件上载到服务器并从服务器响应设置图像   编码风格清理java代码,多个else if语句   java是否需要使此变量可变?   java线程未更新GlassPane上的进度条   java关闭调试模式@Vaadin Spring启动应用程序