Включить action_url в уведомление Nagios по электронной почте?

Вопрос или проблема

Существует ли способ включить action_url (из определения сервиса) в шаблон электронной почты?

Только что протестировал это, и вам нужен макрос $SERVICEACTIONURL$, но имейте в виду, что макрос МОЖЕТ содержать относительный путь, который расширяется в веб-виде, но расширение не происходит, если вы используете его в строках уведомлений. Лучше использовать абсолютные URL.

.

Ответ или решение

Чтобы включить action_url в уведомления по электронной почте Nagios, необходимо следовать определенным шагам и учитывать несколько важных аспектов.

1. Понимание макроса $SERVICEACTIONURL$

Для того чтобы добавить URL действия в шаблон уведомления, первым делом следует использовать макрос $SERVICEACTIONURL$, который предоставляет ссылку на выполнение действий для конкретной службы. Этот макрос указывает на путь, заданный в определении службы Nagios.

2. Ограничения использования

Важно понимать, что макрос может содержать относительный путь, который будет корректно обрабатываться в веб-интерфейсе Nagios. Однако в уведомлениях по электронной почте на данный момент не происходит расширения относительно адресов. В результате этого, чтобы избежать путаницы и обеспечить корректное функционирование ссылок, рекомендуется использовать абсолютные URL.

3. Настройка уведомлений

Чтобы настроить уведомление таким образом, чтобы оно включало абсолютный action_url, выполните следующие шаги:

  • Откройте файл конфигурации службы, который вы хотите изменить. Обычно он находится в /usr/local/nagios/etc/objects/ или в другом репозитории, где сохранены ваши конфигурации Nagios.

  • Найдите определение службы, для которой вы хотите добавить URL действия.

define service {
    use                 generic-service
    host_name           your_host
    service_description your_service
    check_command       your_command
    action_url          http://your-nagios-server/nagios/cgi-bin/some_action.pl?service=$SERVICEDESC$
}
  • В части конфигурации уведомлений добавьте $SERVICEACTIONURL$, после чего убедитесь, что этот макрос указывает на полный URL.

4. Пример уведомления

Для того чтобы добавить action_url в email-уведомление, необходимо редактировать шаблон уведомлений. В конфигурационных файлах добавьте соответствующие строки:

define contact {
    ...
    service_notification_commands email_notification
    ...
}

define command {
    command_name    email_notification
    command_line    /usr/bin/printf "%b" "Уведомление о состоянии\n\nСлужба: $SERVICEDESC$\nСостояние: $SERVICESTATE$\nОписание: $SERVICEOUTPUT$\nДействие: $SERVICEACTIONURL$" | /usr/bin/mail -s "Уведомление Nagios от $NAGIOSHOST$" $CONTACTEMAIL$
}

5. Заключение

Следуя приведенным выше инструкциям, вы сможете успешно интегрировать action_url в уведомления Nagios, отправляемые по электронной почте. Использование абсолютных URL минимизирует ошибки и повышает удобство восприятия полученной информации. Это важный шаг для оптимизации работы с Nagios и повышения эффективности мониторинга ваших сервисов. Если у вас возникнут дополнительные вопросы или потребуется индивидуальная помощь, не стесняйтесь обращаться на официальные форумы или ресурсы сообщества Nagios.

Оцените материал
Добавить комментарий

Капча загружается...