feat: Add SNMP provider for receiving SNMP traps as alerts#6258
Open
ska2704 wants to merge 2 commits intokeephq:mainfrom
Open
feat: Add SNMP provider for receiving SNMP traps as alerts#6258ska2704 wants to merge 2 commits intokeephq:mainfrom
ska2704 wants to merge 2 commits intokeephq:mainfrom
Conversation
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit f1b29c5. Configure here.
|
You have used all of your free Bugbot PR reviews. To receive reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Closes #2112
Description
Adds SNMP provider that receives SNMP v1/v2c traps as Keep alerts.
keep/providers/snmp_provider/snmp_provider.py, provider with_format_alert(), severity mapping for all 6 generic trap types (coldStart, warmStart, linkDown, linkUp, authenticationFailure, egpNeighborLoss), SHA-256 fingerprinting for deduplicationkeep/providers/snmp_provider/alerts_mock.py- 6 realistic mock trap scenarioskeep/providers/snmp_provider/__init__.pyChecks
Additional Information
SNMP is push-only network devices send traps to Keep's webhook endpoint, no credentials needed. The provider follows the same pattern as NetdataProvider (no auth config, pure
_format_alertingest)./claim #2112
Note
Low Risk
Adds a new provider and mock data without changing existing provider logic or shared infrastructure; primary risk is payload-format mismatches causing incorrect alert fields/severity.
Overview
Introduces a new
SnmpProviderthat accepts push-based SNMP trap webhook payloads and maps them into KeepAlertDtos, including generic-trap name/severity mapping, label extraction (community/agent/OID/varbinds), timestamp handling, and SHA-256 fingerprinting for deduplication.Adds
alerts_mock.pywith several realistic SNMP trap examples to supportBaseProvider.simulate_alert()for local testing/simulation (with an empty__init__.pyscaffold for the new provider package).Reviewed by Cursor Bugbot for commit f1b29c5. Bugbot is set up for automated code reviews on this repo. Configure here.