一组nagios插件,用于监视opentable mesos中托管的服务。

otpl-service-check的Python项目详细描述


基本的nagios/sensu检查opentable发现服务。

依赖关系

requirements.txt

参数

使用-h--help运行以查看命令行参数 文档。

接口

如果解析命令行参数存在错误,则退出时返回 代码3(UNKNOWN)并打印调用错误。

如果到达发现和分析公告时出错 对于您的服务,我们用退出代码3返回(^ {TT4}$)。

我们记录与公告相关的关键和警告状态,并返回 用退出代码2(^ {TT6}$)和1(^ {TT7}$) 分别是。

健康检查终点检查

默认情况下,otpl-service-check检查服务的运行状况。

如果healthcheck端点返回状态代码2xx,则 被认为是成功的。如果返回的是4xx,则这被视为 警告(退出代码1)。{T1111}被认为是关键的(退出代码2)。 在后两种情况下,除了记录服务状态外, 基于响应的Content-Type,我们记录解析后的版本 响应体的。

  • 将打印相当格式的^ {TT13}$响应的第一千兆字节。
  • text/html响应被省略;将打印一条表示同样多响应的消息。
  • 将打印前128个字节的text/plain响应。
  • 否则,响应将被视为text/plain

all记录关键状态、警告和成功,并且 退出状态是整个过程中最差的一组。

避免比赛

从发现中提取所有公告,然后检查每个公告 天生活泼。如果otpl-service-check发现严重错误,则 仔细检查你的服务公告。如果有任何关键的 错误是一个不再存在的声明,它们是 降级为警告,并发出进一步警告,指示 这种情况发生了。

注意,这并不能避免所有的比赛条件,只是 他们的阶级。

端点响应代码

  • 2xx0OK
  • 4xx1WARNING
  • 5xx2CRITICAL

这有点滥用http响应代码,但我们的策略是 这是最简单最灵活的致富方式 来自健康检查终结点的响应。

释放

设置pypi rc文件,.pypirc。例如:

[distutils]
index-servers =
  pypi
  pypitest

[pypitest]
repository = https://testpypi.python.org/pypi
username = cpennello_opentable

[pypi]
repository = https://pypi.python.org/pypi
username = cpennello_opentable

假设发布的版本是a.b.c

创建发行版:python setup.py sdist bdist_wheel

签署分发文件:

for x in dist/*a.b.c*;do
  gpg --detach-sign -a $x
done

使用Twine,首先上传到测试repo。 twine upload -r pypitest dist/*a.b.c*

然后是真正的回购。 twine upload -r pypi dist/*a.b.c*

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

推荐PyPI第三方库


热门话题
安卓 xslt可与xalan cli一起使用,但不能从java代码中使用   java在spring应用程序中使用jackson进行序列化时面临的问题   Java检查Linux问题上的internet连接   当用户单击JavaSwing中的按钮时,从另一个类创建新对象   java为什么小于9,算上9?   使用Websphere 6.1生成WSDL的java未正确生成序列参数   javaq:ViewPager和OnClickListener   获取错误的java无法为child()中的参数“pathString”传递null   java组织。springframework。安全果心用户详细信息。用户详细信息创建用户   性能:单变量赋值与Objectgraph导航(Java)   java为什么资源中的CSS在spring jsp页面中不起作用?   较小的有限值双Java   java REST API如何处理post和函数错误   列出Java流API如何改进表达式