Description

This PR adds a new Nagios provider that enables Keep to receive alerts from Nagios via webhook notifications.

Changes

  • ✅ Implement webhook-based Nagios provider
  • ✅ Support both host and service notifications
  • ✅ Handle all Nagios notification types (PROBLEM, RECOVERY, ACKNOWLEDGEMENT, FLAPPING, DOWNTIME)
  • ✅ Map Nagios states to Keep severity/status
  • ✅ Add comprehensive documentation with setup instructions
  • ✅ Include Nagios icon
  • ✅ Add provider to overview page and mint.json

Implementation Details

The provider follows the same webhook pattern as other monitoring providers (Checkmk, Icinga2, LibreNMS). It:

  • Accepts webhook POST requests from Nagios notification commands
  • Parses both host and service alert payloads
  • Generates stable alert IDs based on host/service names
  • Maps Nagios states (OK/WARNING/CRITICAL/UNKNOWN/UP/DOWN/UNREACHABLE) to Keep severities
  • Handles notification types for proper alert lifecycle (firing/resolved/acknowledged/suppressed)

Testing

Tested with mock alert data covering:

  • Service alerts (WARNING, CRITICAL, RECOVERY)
  • Host alerts (DOWN, UP, UNREACHABLE)
  • Acknowledgements and downtime notifications

Documentation

Complete setup guide included in docs/providers/documentation/nagios-provider.mdx with:

  • Notification command definitions for both hosts and services
  • Contact and contact group configuration
  • All supported Nagios macros
  • Links to official Nagios documentation

Closes #3960

/claim #3960

Claim

Total prize pool $30
Total paid $0
Status Pending
Submitted March 07, 2026
Last updated March 07, 2026

Contributors

A6

a638011

@a638011

100%

Sponsors

KE

Keep (YC W23)

@keephq

$30