将任意JSON警报转换为警报管理器警报
pyconvertalert的Python项目详细描述
PyConvertAlert
PyConvertAlert可以轻松地从某种警报系统(正常运行时间机器人、Rackspace智能)获取任意警报,并将其转换为警报管理器(Prometheus)警报。
开始
pypi提供了最新的稳定版本:
pip install pyconvertalert
否则您可以从git安装:
pip install git+https://github.com/jpavlav/PyConvertAlert
使用量
>>>frompyconvertalertimportConverter>>>>>>test_lookup_dict_1={..."values":[...{..."people":[...{..."email":"jim@jim.com",..."phone":"111-111-1111"...}...]...}...]...}>>>>>>>>>test_mapper_dict_1={..."labels":{..."email_address":"email",..."phone_number":"phone"...}...}>>>convert=Converter(mapper=test_mapper_dict_1)>>>convert.convert_it(test_lookup_dict_1){'labels':{'email_address':'jim@jim.com','phone_number':'111-111-1111'}}
进一步使用
在某些情况下,将有多个键与查找匹配。在这个 case,转换后的dict返回的值将是一个包含 与此键匹配的值。为了处理我们需要 更具体地说,可以指定要在 具体值。下面是一个示例:
>>>test_lookup_dict_2={..."flowers":[...{..."best_flower":{..."name":"Orchid",..."scientific_name":"Orchidaceae"...},..."wild_flower":{..."name":"Gold Yarrow",..."scientific_name":"Achillea filipendulinaa"...}...}...]...}>>>>>>test_mapper_dict_2={..."labels":{..."best_flower_name":['best_flower','name'],..."best_flower_scientific_name":['best_flower',...'scientific_name']...}...}>>>>>>>>>convert=Converter(mapper=test_mapper_dict_2)>>>convert.convert_it(test_lookup_dict_2){'labels':{'best_flower_name':'Orchid','best_flower_scientific_name':'Orchidaceae'}}
上面,我们看到我们通过 指定要搜索的键列表。我们首先从键“best_flower”返回值,然后从键“name”返回值。
运行测试
应该简单到:
python -m unittest test_py_convert_alert.py
贡献
- 用叉子叉。
- 创建一个分支来描述您正在处理的问题或功能。
- 一路上做出改变,承诺。
- 跟随PEP8,除了荒谬的地方。
- 包括任何功能更改的测试。
- 推动更改并创建拉取请求:d。
使用
构建- Python3-语言优美。
作者
- justin palmer-urrything-Me