我telegraf在测试中用作测量/监控工具。我需要telegraf自动编辑配置;因为所有测试都是自动执行的。
目前我正在使用re它来配置它;这是过程:
- 阅读整个文件内容。
- 使用正则表达式查找和编辑所需的插件/属性。
- 将整个更改的内容写入文件。
但是我正在寻找一个库(如果存在),ConfigParser或者reconfigure将配置作为对象而不是内容来处理。
我试过了ConfigParser.ConfigParser,ConfigParser.RawConfigParser而且ConfigParser.SafeConfigParser;全部返回:
ConfigParser.ParsingError: File contains parsing errors: /etc/telegraf/telegraf.conf
reconfigure库具有特定的配置类,每个都属于一种特殊类型的 linux 配置(例如FSTabConfig,ResolvConfig和一些其他类型),但它不包含配置类telegraf。
有没有人有一个选择?
编辑1:
我尝试configobj了库(正如@KevinC 建议的那样),但它什么也没加载:
>>> import configobj
>>> c = configobj.ConfigObj('/home/zeinab/Desktop/config-modification/telegraf.conf', list_values=False)
>>> c
ConfigObj({})
使用list_values=True返回相同的结果。