Установка пакета 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