Collectd插件用于监视EOS MGM度量。

collectd-eos的Python项目详细描述


用于收集EOS度量的collected插件。 使用eos客户端连接到mgm实例,并发布节点、fs和空间度量。

collectd config部分示例:

<Plugin python>
    Import collectd_eos
    <Module collectd_eos>
        instance example root://eos.example
        instance another root://another.eos.instance.example
        instance third root://third.mgm.intance.example
        interval 60
        eos_client_command ssh client.host.example eos
    </Module>
</Plugin>
  • instance需要2个值:
    • eos实例名/插件实例名
    • EOS米高梅网址
  • interval覆盖默认的收集间隔
  • eos_client_命令在collected节点上没有eos客户端时使用, 运行eos需要ssh或docker,特别是在插件开发期间

如果配置中没有定义实例,并且设置了$eos_mgm_url, 它用作默认url,实例名设置为主机名部分。

如果配置中没有定义实例,并且$eos_mgm_url未设置, 当前主机名用作实例名和url。

测试

病毒试验:

virtualenv venv
. venv/bin/activate
pip install -r build-requirements.txt -r test-requirements.txt
pip install -e .
pytest
python setup.py sdist bdist_wheel
twine check dist/*
tox

使用collectd.conf或collectd.docker.conf进行功能测试:插件是否处理实际的度量?

在带有EOS的主机上:

$ collectd -Tf -C collectd.conf

Docker可用于EOS客户端:

$ docker run --name eos_client --rm -itd gitlab-registry.cern.ch/dss/eos:4.4.10
<container id output>
$ docker exec -it eos_client kinit <username>@CERN.CH
<password prompt>
$ collectd -Tf -C collectd.docker.conf
<check collectd log for errors>
$ docker stop eos_client

更改日志

该项目的所有显著变化都将记录在本文件中。

格式基于Keep a Changelog, 这个项目遵循Semantic Versioning

0.2.1-2019-02-28

已添加

  • 更多测试
  • 更多文档

已修复

  • 自述文件末尾还需要一个新行用作包说明

已删除

  • Python2.6支持不再承诺、尝试或测试。

0.2.0-2019-02-27

已添加

  • pyproject.toml根据PEP-518
  • 定义构建需求
  • build-requirements.txt和build-requirements.26.txt用于记录构建需求 以一种更现实,向后兼容的方式。

已更改

  • 配置节格式。已删除米高梅URL密钥 eos实例现在由“instance”键定义,该键需要两个值:
    • 实例名,必须唯一, 定义用度量报告的collectd插件实例名
    • mgm_url,url eos客户端将查询数据

已修复

  • 不将-1的间隔发送到collectd,它不会将其解释为默认值

0.1.0-2019-02-26

已添加

  • readme.rst和changelog.rst
  • 包源src/collected_eos
  • 测试中的单元测试/和tox.ini
  • collectd.conf和collectd.docker.conf用于使用collectd进行测试
  • eos.types.db定义collectd的eos时间序列数据集
  • 许可apache 2

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

推荐PyPI第三方库


热门话题
java刷新JLabel   Java:字符“和\”是一样的吗?   仅限java Spring Kafka事务使用者   java如何强制Apache Tapestry更新javascript?   Maven exec:java:如何打开和读取资源目录中的文件?   java Log4j多线程   neo4j SDN4 java。ClassCastException:java。不能将lang.Integer转换为java。lang.使用AttributeConverter时长   java检查RDD的相等性   java如何创建ArrayList的新实例?   java发现了类org。日食码头。websocket。应用程序编程接口。升级请求,但需要接口   java ProGuard忽略注释默认值   “检索原型:”期间发生内部错误。创建新Maven项目时的Java堆空间   java是否仅在使用资源代码的trywith中遇到被抑制的异常?   java Watson AlchemyLanguage如何设置组合调用的参数