跳转到主要内容

zc.async的Munin插件。

项目描述

简介

此软件包提供了用于监控 zc.async 队列的munin插件。

它使用 gocept.munin 进行插件注册,并基于 munin.zope 开发。如果您想编写新插件,请参考其文档。

插件

目前有3个插件可供使用,提供以下功能

  • 作业队列大小

  • 在轮询间隔内启动的作业。

  • 在轮询间隔内成功的作业。

  • 在轮询间隔内失败的作业

  • 在轮询间隔内状态未知的作业。

  • 最长成功作业的运行时间

  • 最短成功作业的运行时间

  • 最长失败作业的运行时间

  • 最短失败作业的运行时间

如何使用

  • 首先将软件包包含在您的构建out 实例 槽中

    [instance]
    ...
    eggs =
        ...
        munin.async
    zcml =
        ...
        munin.async
  • 要创建插件辅助脚本,还需要包括以下附加部分,并扩展你的 parts 定义

    [buildout]
    parts =
        ...
        munin
    
    [munin]
    recipe = zc.recipe.egg
    eggs = munin.async
    arguments = http_address='${worker:http-address}', user='${worker:user}'

    arguments 选项用于将配置值传递给生成的辅助脚本,该脚本随后用作实际的 munin 插件(见下文)。在 instance 部分中给出的任何 ip-addresshttp-addressport-baseuser 设置都应该在此处重复,并用逗号分隔。

    请注意,这里的变量名使用下划线而不是破折号——以下列表显示了所有支持的设置及其相应的默认值

    • ip_address='<ip-address>' [‘localhost’]

    • http_address=<http-address> [8080]

    • port_base=<port-base> [0]

    • user=<user-credentials> [n.a.]

    此处可以使用字面值或对 worker 部分的引用,例如:“http_address='${worker:http-address}',user='${worker:user}'”。请注意,生成的 bin/munin 脚本将详细复制此行,因此需要额外的引号。

  • 当监控多个工作实例时,例如在 ZEO 设置中,需要生成单独的辅助脚本。为此,可以使用 zc.recipe.eggscripts 选项,如下所示

    [buildout]
    parts =
        ...
        munin1
        munin2
    
    [munin1]
    recipe = zc.recipe.egg
    eggs = munin.async
    scripts = munin=munin1
    arguments = http_address='${worker1:http-address}', user='${worker1:user}'
    
    [munin2]
    recipe = zc.recipe.egg
    eggs = munin.async
    scripts = munin=munin2
    arguments = http_address='${worker2:http-address}', user='${worker2:user}'

    然后可以逐个创建每个脚本的必要符号链接(见下文)。请注意,在这种情况下,您应明确提供一个不同的 prefix 参数。

    现在您应该可以按以下方式调用插件

    请注意,出于安全原因,视图需要 View management screens 权限。

  • 接下来,您需要从构建配置的 bin/ 中的辅助脚本创建指向 munin 插件目录的符号链接。辅助脚本本身可以帮助您完成此操作

    $ bin/munin install /opt/munin/etc/plugins [<prefix>] [<suffix>]

    这将使用提供的前缀和后缀或主机名和当前目录来组装名称(见下文),在指定目录中安装必要的符号链接。

    或者,您也可以自己安装所需的符号链接

    $ cd /opt/munin/etc/plugins
    $ ln -s ~/zope/bin/munin company_zcasyncqueuesize_worker1
    $ ln -s ~/zope/bin/munin company_zcasyncjobstatistics_worker1
    $ ln -s ~/zope/bin/munin company_zcasynctimestatistics_worker1

    这里 /opt/munin/etc/plugins 是您的 munin 目录,~/zope/ 是您的构建配置的根目录,company 是任意前缀的占位符,worker1 是在 munin 中显示的名称。

  • 最后,在 munin 中配置插件(如果您已正确设置如上步骤 2 中描述的 arguments 选项,则可以跳过此步骤)

    $ cd /opt/munin/etc/plugin-conf.d/
    $ vi munin.async.conf
    ... [company_*_site1]
    ... env.AUTH myuser:myuser
    ... env.URL https://#:8080/@@munin.async.plugins/%s

    这里 myuser:myuser 是您的 Zope 用户凭据,localhost:8080 是您的站点 URL。请访问 munin 获取有关插件配置的更多信息。

参考

变更日志

0.5 - 2011-03-04

  • 在作业队列浏览器视图中测量正确的队列长度(而不是轮询长度)。[mj]

0.4 - 2011-03-04

  • 在新的插件图形定义中更正了一个拼写错误。[mj]

0.3 - 2011-03-04

  • 为作业队列大小添加了一个图形(所有队列的总和)[mj]

0.2 - 2010-12-14

  • 首次发布到 pypi [ggozad]

0.1 - 2010-08-31

  • 首次发布 [ggozad, stefan]

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装软件包的更多信息。

源代码分发

munin.async-0.5.zip (15.2 kB 查看散列值)

上传时间 源代码

由以下提供支持