Content-Length: 585594 | pFad | http://github.com/keephq/keep/pull/5149

E4 feat: Adds Nagios provider by DMMutua · Pull Request #5149 · keephq/keep · GitHub
Skip to content

feat: Adds Nagios provider #5149

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 43 commits into
base: main
Choose a base branch
from
Open

Conversation

DMMutua
Copy link
Contributor

@DMMutua DMMutua commented Jul 4, 2025

Closes #3960

📑 Description

Introduces Nagios as a new supported provider.
Enables receptions of alerts from Nagios within Keep.
The integration is designed to be push-based and relies on Nagios's native Event Handler system.

  • new provider class NagiosProvider to handle incoming webhook requests from Nagios.
  • functionality to parse JSON payloads sent by Nagios event handler and map it to Keep's standard AlertDto format.
  • detailed documentation for Nagios-side config for the provider
  • Nagios Logo added in iconography.

✅ Checks

  • My pull request adheres to the code style of this project
  • My code requires changes to the documentation
  • I have updated the documentation as required
  • All the tests have passed

/claim #3960

Copy link

vercel bot commented Jul 4, 2025

@DMMutua is attempting to deploy a commit to the KeepHQ Team on Vercel.

A member of the Team first needs to authorize it.

@dosubot dosubot bot added size:L This PR changes 100-499 lines, ignoring generated files. Documentation Improvements or additions to documentation Feature A new feature hacktoberfest-accepted Provider Providers related issues labels Jul 4, 2025
cursor[bot]

This comment was marked as outdated.

Copy link
Member

@shahargl shahargl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see comments

@shahargl
Copy link
Member

shahargl commented Jul 5, 2025

hey @DMMutua , thanks for opening this PR. please see comments.

cursor[bot]

This comment was marked as outdated.

@DMMutua
Copy link
Contributor Author

DMMutua commented Jul 5, 2025

hey @DMMutua , thanks for opening this PR. please see comments.

Hey @shahargl
Thanks for review. Will raise PR changes ASAP.

cursor[bot]

This comment was marked as outdated.

@shahargl
Copy link
Member

@DMMutua are you sure? I still get:

def test_nagios_alerts():
        """Test Nagios alert formatting with mock data"""
        config = ProviderConfig(
            id="test-nagios",
            name="Test Nagios",
            type="nagios",
            authentication={
                "url": "http://test.nagios.local/",
                "username": "test_user",
                "password": "test_pass"
            }
        )
    
>       provider = NagiosProvider(None, "test-nagios", config)
E       TypeError: Can't instantiate abstract class NagiosProvider with abstract methods dispose, validate_config

Copy link
Member

@shahargl shahargl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see comments

@dosubot dosubot bot added size:XL This PR changes 500-999 lines, ignoring generated files. and removed size:L This PR changes 100-499 lines, ignoring generated files. labels Jul 14, 2025
cursor[bot]

This comment was marked as outdated.

@shahargl
Copy link
Member

@DMMutua integration tests failing:

>           assert formatted_alert.severity == expected["severity"]
E           AssertionError: assert 'low' == <AlertSeverity.LOW: 'low'>
E            +  where 'low' = AlertDto(id='b7dc4d0b8b4795e3fedfebce796815ba', name='HTTP', status='resolved', severity='low', lastReceived='2024-01-...service_state='OK', host='web-server-01', output='HTTP OK: HTTP/1.1 200 OK - 1234 bytes in 0.123 second response time').severity

@DMMutua
Copy link
Contributor Author

DMMutua commented Jul 14, 2025

@shahargl working on it right now.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

@DMMutua DMMutua requested a review from shahargl July 21, 2025 07:01
@DMMutua
Copy link
Contributor Author

DMMutua commented Jul 24, 2025

@shahargl @talboren Hi.
All tests have passed. Patiently waiting for your reviews. Thanks!

shahargl
shahargl previously approved these changes Jul 24, 2025
Copy link
Member

@shahargl shahargl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@dosubot dosubot bot added the lgtm This PR has been approved by a maintainer label Jul 24, 2025
@DMMutua
Copy link
Contributor Author

DMMutua commented Aug 8, 2025

hey @talboren. Greetings!
Awaiting your review on this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🙋 Bounty claim Documentation Improvements or additions to documentation Feature A new feature hacktoberfest-accepted lgtm This PR has been approved by a maintainer Provider Providers related issues size:XL This PR changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[🔌 Provider]: Nagios Provider
3 participants








ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: http://github.com/keephq/keep/pull/5149

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy