Я хотел бы попросить вас дать подсказку по следующему вопросу.
Я использую внешние скрипты для проверок в Zabbix 2.2. Я пытаюсь разработать какой-нибудь скрипт, который будет получать метку времени определенного файла на удаленном хранилище. Скрипт нормально работает в CLI Zabbix сервера, но в Zabbix я вижу 0 Только (нулевое) значение.
Я определил, что основная проблема заключается в строке с командой ssh, в которой я пытаюсь подключиться к удаленному хранилищу и получить информацию.
Скрипты выглядят так:
TIMESTAMP_REMOTE_FILE=$(ssh -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no -i $KEY_FILE "$REMOTE_USER"@"$HOSTNAME" "stat --format='%Y' $FILE ")
echo TIMESTAMP_REMOTE_FILE
Вывод в консоли linux выглядит так:
[user1@hostname1 externalscripts]$ sudo -u zabbixsrv ./days_since_last_backup.sh
1436745682
[user1@hostname1 externalscripts]$
Но в Zabbix (Последние значения) это выглядит так:
Timestamp Value
2015.Jul.13 15:04:25 0
Когда я изменяю значение TIMESTAMP_REMOTE_FILE для некоторого определенного значения (например, 100000), значение также отображается в Zabbix.
Timestamp Value
2015.Jul.13 16:04:25 100000
Кто-нибудь сталкивался с такой же проблемой, как я? Есть ли у кого-нибудь подсказки, как это решить?
Поэтому я рассмотрел описанный вопрос более глубоко. Я включил вход в файл с помощью
TIMESTAMP_REMOTE_FILE=$(
ssh -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no
-i $KEY_FILE "$REMOTE_USER"@"$HOSTNAME"
"stat --format='%Y' $FILE " > /tmp/zabbix_script.log
)
echo TIMESTAMP_REMOTE_FILE
Совершенно четко было сказано, что команда ssh пытается найти файл с закрытым ключом. Поскольку сценарий запускается из командной строки из каталога, в котором находится сценарий, проблем не возникло.
Спасибо всем за участие ... каждая подсказка имеет значение