В предыдущей статье было описание, как собирать метрики redis с помощью powershell, так же, как настроить это все дело на стороне zabbix, тут же отобразим только сам скрипт на python и небольшую часть конфигурационного файла zabbix с описанием переменной! Так же отмечу, что сам Redis работает в контейнере Docker. В связи с этим, что бы zabbix агент мог обратиться к контейнеру, нужно добавить пользователя, из под которого работает сервис, в группу docker!
#!/usr/bin/env python3
import sys
import json
data = sys.stdin.readlines()
dict = {}
index = 0
while index < len(data):
element = data[index]
if ":" in element:
temp = element.strip()
#print(temp.split(":"))
test = temp.split(":")
dict[test[0]]=test[1]
json_object = json.dumps(dict, indent = 4)
index += 1
print(json_object)
#Config_Zabbix
EnableRemoteCommands=1
Server=zabixs01.xx.net,127.0.0.1
ListenPort=10050
ServerActive=zabixs01.xx.net
HostMetadata=linux.t2
UserParameter=RedisInfo, docker exec -i redis redis-cli info| /etc/zabbix/scripts/redisinfo.py
LogFile=/var/log/zabbix/zabbix_agentd.log
Timeout=30
Hostname=server-t2-01
