Add a webhook-based Nagios provider for receiving host and service notifications in Keep.
nagios_provider.py: Webhook-only provider following the Checkmk provider pattern
host + service for deduplication_format_alert() handles both host-only and host+service payloadsalerts_mock.py: Mock fixtures for host_down and service_critical scenariosREADME.md: Setup documentation with Nagios Core/XI command definitions and curl test examplesdefine command{
command_name notify-keep-service
command_line /usr/bin/curl -s -X POST \
-H "Content-Type: application/json" \
-H "X-API-KEY: \$USER1\$" \
-d '{"host_name":"\$HOSTNAME\$","service_description":"\$SERVICEDESC\$","service_state":"\$SERVICESTATE\$","service_output":"\$SERVICEOUTPUT\$","notification_type":"\$NOTIFICATIONTYPE\$"}' \
KEEP_WEBHOOK_URL
}
curl -X POST http://localhost:8080/alerts/event/nagios \
-H "Content-Type: application/json" \
-H "X-API-KEY: your-api-key" \
-d '{"host_name":"testhost","host_state":"DOWN","host_output":"CRITICAL - Host unreachable","notification_type":"PROBLEM"}'
/claim #3960
Eunho Lee (Tony)
@lucky7323
Keep (YC W23)
@keephq