使用Zope 2启用zc.monitor
项目描述
介绍
此包可从命令行监控Zope 2实例。它将zc.monitor (http://pypi.python.org/pypi/zc.monitor) 和zc.z3monitor (http://pypi.python.org/pypi/zc.z3monitor) 插入到Zope 2中。zc.monitor使用zc.ngi服务器并定义另一个线程来处理监控。这样,即使在HTTPServer挂起的情况下,您也应该能够监控您的应用程序。
Zope配置
将以下内容添加到您的 zope.conf 中,以在本地回环接口的8888端口上启用zc.ngi服务器
<product-config five.z2monitor> bind 127.0.0.1:8888 </product-config>
探测
此包已与来自不同包的探测进行了测试
zc.z3monitor
Products.ZNagios
zc.monitorcache
zc.monitorlogstats
ztfy.monitor
要注册自己的探测,只需定义一个新的提供zc.z3monitor.interfaces.IZ3MonitorPlugin接口的实用工具。例如
<utility component=".zc_uptime" provides="zc.z3monitor.interfaces.IZ3MonitorPlugin" name="uptime" />
组件应如下所示
def zc_uptime(connection, database='main'): """uptime of the zope instance in seconds""" app = App() elapsed = time.time() - app.Control_Panel.process_start print >> connection, elapsed app._p_jar.close()
ZODB连接始终是第一个参数。您可以在后面添加自己的参数。
一旦启动实例,您应该会看到类似的内容
INFO zc.ngi.async.server listening on ('127.0.0.1', 8888)
ngi服务器已启动,您可以使用netcat等工具查找值
echo 'uptime' | nc -i 1 localhost 8888
plone.recipe.zope2instance
如果您使用buildout和plone.recipe.zope2instance配方配置zope实例(http://pypi.python.org/pypi/plone.recipe.zope2instance)。要定义zc.z2monitor的主机和端口,请使用zope-conf-additional选项,如下所示
[client1] recipe = plone.recipe.zope2instance http-address = 8080 user = admin:admin eggs = ${buildout:eggs} zcml = ${buildout:zcml} zope-conf-additional = <product-config five.z2monitor> bind 127.0.0.1:8888 </product-config>
实例运行后,您可以使用以下命令从命令行获取可用的探针:
bin/instance monitor dbinfo main
这相当于
echo 'dbinfo main' | nc -i 1 <zc.monitor host> <zc.monitor port>
要了解已注册的探针,请使用此命令
bin/instance monitor help
变更日志
0.2 (2012-11-05)
为 plone.recipe.zope2instance 添加入口点
更多文档
0.1 (2012-11-05)
初始实现
项目详情
five.z2monitor-0.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 48db4bbd685e39ee1531dd318421989ae0e83600d246a799608f55164ce76e2b |
|
MD5 | 41dac2e37e2c69ff5439aaf03bbe5e99 |
|
BLAKE2b-256 | 3b931505e8b8fac9c787439d79c04a49715f3821f2a158f9d91d8bad71374417 |