Установка пакета okerrclient
Установить пакет удобнее используя pip (менеджер пакетов python). Для Debian/Ubuntu:
sudo pip3 install okerrclient
Настройка okerrclient
Скопируйте шаблон файла конфигурации в /etc:
sudo cp /usr/local/okerrclient/conf/okerrclient.conf /etc
и отредактируйте его. Минимально - нужно изменить текстовый идентификатор проекта (TextID) в строчке
textid=YourProjectTextID
Если в проекте настроены пароли, может быть необходимо настроить так же опции secret и keypass.
Проверка
Обновите (или создайте) тестовый индикатор:
$ okerrclient --name test:delme -s OK
okerr updated test:delme = OK
при запуске okerrclient без параметров, он обновит все стандартные индикаторы для сервера:
root@Instantmix:~# okerrclient
okerr updated Instantmix:uptime = 2016214
okerr updated Instantmix:la = 0.26
okerr updated Instantmix:df-/ = 38.0
okerr updated Instantmix:maxlogsz = 16086950
...
Настройка периодического обновления
Есть несколько способов, как сделать чтобы okerrclient периодически отправлял обновления индикаторов в okerr. Нужно использовать только один из них.
Способ 1: запуск okerrclient через cron.hourly
Простейший способ. В каталоге /etc/cron.hourly сделайте файл okerrclient:
#!/bin/sh
/usr/local/bin/okerrclient
Все. Если вы воспользовались этим способом - остальные способы вам не нужны.
Способ 2: запуск из crontab
Выполните команду:
crontab -e
В открывшемся редакторе задач cron добавьте строчку:
12 * * * * /usr/local/bin/okerrclient
Она указывает демону cron запускать okerrclient на 12-ой минуте каждого часа (вместо 12 используйте любое число от 0 до 59).
Способ 3: установка в качестве сервиса SystemD
okerrclient сам по себе может работать в качестве системного демона, для этого нужно запустить его при старте системы. При установке системы этим методом (SystemD), нужно убедиться, что система использует этот тип инициализации. Выполните команду systemctl - если она выдаст длинный список сервисов - можно использовать этот способ. Если такой команды нет - используйте любой другой из описанных здесь способов.
sudo cp /usr/local/okerrclient/systemd/okerrclient.service /etc/systemd/system/
systemctl enable okerrclient
systemctl start okerrclient
Готово. Демон okerrclient запущен и будет автоматически запускаться при старте системы. Проверить его состояние можно командой
root@Instantmix:~# systemctl status okerrclient
● okerrclient.service - okerr client daemon
Loaded: loaded (/etc/systemd/system/okerrclient.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2018-02-26 07:29:45 CET; 1 day 9h ago
Main PID: 13899 (python)
Tasks: 1 (limit: 4915)
CGroup: /system.slice/okerrclient.service
└─13899 /usr/bin/python /usr/local/bin/okerrclient -d --fg
Feb 27 16:34:38 Instantmix python[13899]: okerr updated Instantmix:uptime = 2016281
Feb 27 16:34:38 Instantmix python[13899]: okerr updated Instantmix:la = 0.26
Feb 27 16:34:38 Instantmix python[13899]: okerr updated Instantmix:df-/ = 38.0
Способ 4: установка в качестве сервиса SysV
sudo cp /usr/local/okerrclient/init.d/okerrclient /etc/init.d/
sudo update-rc.d okerrclient defaults
sudo /etc/init.d/okerrclient start
Чтобы проверить, что okerrclient запущен:
$ sudo /etc/init.d/okerrclient status
* okerrclient is running