https://github.com/niltooth/crap
A high performance snmp trap to nats proxy
https://github.com/niltooth/crap
go golang json nats natsio snmp traps
Last synced: 5 months ago
JSON representation
A high performance snmp trap to nats proxy
- Host: GitHub
- URL: https://github.com/niltooth/crap
- Owner: niltooth
- Created: 2020-05-01T15:15:44.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2021-10-13T14:30:32.000Z (over 4 years ago)
- Last Synced: 2024-06-19T15:16:53.724Z (almost 2 years ago)
- Topics: go, golang, json, nats, natsio, snmp, traps
- Language: Go
- Homepage:
- Size: 1.97 MB
- Stars: 2
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# crap
A high performance snmp trap to nats proxy.
Receives snmp traps, encodes them as json or protobuf and publishes them to a nats subject.
This tool is intended to be a building block for other systems. Not a full blown alerting engine with a trap receiver.
It only starts here.. continue by enabling jetstream, adding streams and writing consumers.
This system should be able to scale from a single embedded instance on a raspberry pi to a very large cluster.
Messages can be reliably delivered once they have been received by ```crap```
## Status
This is mostly stable, but reporting issues will help a lot.
## Deployments
- Local. By running local the machine can basically send its traps over nats. This removes complexity with configuration management, h/a and load balancing
- Cloud/Datacenter with single node or multiple node
- Edge/Branch: If message reliability is of concern you may want to deploy an instance to edge/branch locations. This will let messages get buffered on the LAN and reliably sent upstream.
## Features
- Encode snmp traps (v1,v2 & v3) into Protocol Buffers or JSON
- Internal stats sent to nats
Example config can be found in the base of the github repo