Skip to content

Commit c9c0cae

Browse files
authored
Revise README with architecture and use cases
Updated architecture diagram and added use cases for NMS development, MIB management, integration testing, and learning. Removed 'Best For' and 'Not For' sections.
1 parent 73e37d6 commit c9c0cae

1 file changed

Lines changed: 140 additions & 37 deletions

File tree

β€ŽREADME.mdβ€Ž

Lines changed: 140 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -87,23 +87,99 @@ BACKEND_PORT=9000 FRONTEND_PORT=3000 ./install-trishul-snmp.sh up
8787
## πŸ—οΈ Architecture
8888

8989
```
90-
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
91-
β”‚ Web Browser (Port 8080) β”‚
92-
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
93-
β”‚
94-
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
95-
β”‚ β”‚
96-
β”Œβ”€β”€β”€β–Όβ”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”
97-
β”‚ Nginx │◄────────────►│ FastAPI β”‚
98-
β”‚ :8080 β”‚ API β”‚ :8000 β”‚
99-
β””β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜
100-
β”‚
101-
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
102-
β”‚ β”‚
103-
β”Œβ”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”
104-
β”‚ Simulator β”‚ β”‚ Receiver β”‚
105-
β”‚ UDP: 1061 β”‚ β”‚ UDP: 1162 β”‚
106-
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
90+
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
91+
β”‚ Web Browser (Port 8080) β”‚
92+
β”‚ β”‚
93+
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β” β”‚
94+
β”‚ β”‚Dashboard β”‚ β”‚Simulator β”‚ β”‚Walker β”‚ β”‚Traps β”‚ β”‚Browser β”‚ β”‚MIBs β”‚ β”‚
95+
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”˜ β”‚
96+
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
97+
β”‚ HTTP
98+
β”‚
99+
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
100+
β”‚ Nginx (Frontend) β”‚
101+
β”‚ β€’ Serves static files β”‚
102+
β”‚ β€’ Reverse proxy to API β”‚
103+
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
104+
β”‚ REST API
105+
β”‚
106+
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
107+
β”‚ FastAPI Backend (Port 8000) β”‚
108+
β”‚ β”‚
109+
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
110+
β”‚ β”‚ API Endpoints β”‚ β”‚
111+
β”‚ β”‚ /api/simulator/* /api/walker/* /api/traps/* β”‚ β”‚
112+
β”‚ β”‚ /api/mibs/* /api/browser/* /api/settings/* β”‚ β”‚
113+
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
114+
β”‚ β”‚
115+
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
116+
β”‚ β”‚ Service Layer β”‚ β”‚
117+
β”‚ β”‚ β”‚ β”‚
118+
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚
119+
β”‚ β”‚ β”‚ MIB Service (pysmi/pysnmp) β”‚ β”‚ β”‚
120+
β”‚ β”‚ β”‚ β€’ Parse & validate MIB files β”‚ β”‚ β”‚
121+
β”‚ β”‚ β”‚ β€’ Check syntax & dependencies β”‚ β”‚ β”‚
122+
β”‚ β”‚ β”‚ β€’ Build OID tree (module/hierarchy views) β”‚ β”‚ β”‚
123+
β”‚ β”‚ β”‚ β€’ Resolve OID names ↔ numeric OIDs β”‚ β”‚ β”‚
124+
β”‚ β”‚ β”‚ β€’ Enumerate traps (24: 19 loaded + 5 system) β”‚ β”‚ β”‚
125+
β”‚ β”‚ β”‚ β€’ Search & filter (name, OID, type, module) β”‚ β”‚ β”‚
126+
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚
127+
β”‚ β”‚ β”‚ β”‚
128+
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚
129+
β”‚ β”‚ β”‚ SNMP Service (pysnmp) β”‚ β”‚ β”‚
130+
β”‚ β”‚ β”‚ β€’ Simulator: Test SNMP agent responses β”‚ β”‚ β”‚
131+
β”‚ β”‚ β”‚ β€’ Walker: Test SNMP client queries β”‚ β”‚ β”‚
132+
β”‚ β”‚ β”‚ β€’ Trap Sender: Send test traps (client) β”‚ β”‚ β”‚
133+
β”‚ β”‚ β”‚ β€’ Trap Receiver: Receive test traps (server) β”‚ β”‚ β”‚
134+
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚
135+
β”‚ β”‚ β”‚ β”‚
136+
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚
137+
β”‚ β”‚ β”‚ Auth Service β”‚ β”‚ β”‚
138+
β”‚ β”‚ β”‚ β€’ Session management (token-based) β”‚ β”‚ β”‚
139+
β”‚ β”‚ β”‚ β€’ User authentication β”‚ β”‚ β”‚
140+
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚
141+
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
142+
β”‚ β”‚
143+
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
144+
β”‚ β”‚ SNMP Network Layer β”‚ β”‚
145+
β”‚ β”‚ β”‚ β”‚
146+
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚
147+
β”‚ β”‚ β”‚Simulator β”‚ β”‚ Sender β”‚ β”‚ Receiver β”‚ β”‚ Walker β”‚ β”‚ β”‚
148+
β”‚ β”‚ β”‚ (SVR) β”‚ β”‚ (CLI) β”‚ β”‚ (SVR) β”‚ β”‚ (CLI) β”‚ β”‚ β”‚
149+
β”‚ β”‚ β”‚UDP: 1061 β”‚ β”‚ Dynamic β”‚ β”‚UDP: 1162 β”‚ β”‚ Dynamic β”‚ β”‚ β”‚
150+
β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚
151+
β”‚ β”‚ β”‚Test SNMP β”‚ β”‚Send test β”‚ β”‚Receive β”‚ β”‚Test SNMP β”‚ β”‚ β”‚
152+
β”‚ β”‚ β”‚agent β”‚ β”‚traps to β”‚ β”‚test trapsβ”‚ β”‚queries β”‚ β”‚ β”‚
153+
β”‚ β”‚ β”‚responses β”‚ β”‚dev/test β”‚ β”‚from dev/ β”‚ β”‚to dev/ β”‚ β”‚ β”‚
154+
β”‚ β”‚ β”‚ β”‚ β”‚targets β”‚ β”‚test env β”‚ β”‚test env β”‚ β”‚ β”‚
155+
β”‚ β”‚ β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜ β”‚ β”‚
156+
β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚
157+
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
158+
β”‚ β”‚ β”‚ β”‚ β”‚ β”‚
159+
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
160+
β”‚ β”‚ Data Storage (Docker Volume) β”‚ β”‚
161+
β”‚ β”‚ /app/data/ β”‚ β”‚
162+
β”‚ β”‚ β”œβ”€β”€ mibs/ (MIB files for validation) β”‚ β”‚
163+
β”‚ β”‚ β”œβ”€β”€ sessions.json (Auth tokens) β”‚ β”‚
164+
β”‚ β”‚ └── settings.json (User config) β”‚ β”‚
165+
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
166+
β”‚ β”‚
167+
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
168+
β”‚ SNMP Protocol (UDP)
169+
β”‚ Host Network Mode
170+
β”‚
171+
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
172+
β”‚ β”‚
173+
β”Œβ”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”
174+
β”‚ Test SNMP β”‚ β”‚ Test Trap β”‚
175+
β”‚ Clients/Agents β”‚ β”‚ Receivers β”‚
176+
β”‚ (Dev/Test Env) β”‚ β”‚ (Dev/Test Env) β”‚
177+
β”‚ β”‚ β”‚ β”‚
178+
β”‚ β€’ Your NMS β”‚ β”‚ β€’ Your NMS β”‚
179+
β”‚ β€’ Custom apps β”‚ β”‚ β€’ Trap parsers β”‚
180+
β”‚ β€’ Test devices β”‚ β”‚ β€’ Log servers β”‚
181+
β”‚ β€’ Simulators β”‚ β”‚ β€’ Test apps β”‚
182+
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
107183
```
108184

109185
**Stack:** Python 3.11 β€’ FastAPI β€’ pysnmp β€’ pysmi β€’ Nginx β€’ Docker
@@ -141,7 +217,6 @@ Interactive tree explorer for navigating OID hierarchies and understanding MIB s
141217
- **Tree navigation** - Expandable hierarchy with configurable depth (1-5 levels)
142218
- **Details panel** - View full metadata, descriptions, and varbinds
143219
- **Integration** - Jump to Walker or Trap Sender with pre-filled data
144-
- **State persistence** - Remembers your position across page switches
145220

146221
### πŸ“š **MIB Manager**
147222
Upload, validate, and manage MIB files with automatic dependency resolution.
@@ -159,6 +234,53 @@ Manage authentication and system preferences.
159234

160235
---
161236

237+
## 🎯 Use Cases
238+
239+
### **For NMS Development**
240+
- βœ… Send test traps to validate receiver format/syntax
241+
- βœ… Receive test traps to validate sender implementation
242+
- βœ… Simulate SNMP agents for client testing
243+
- βœ… Test SNMP walk responses
244+
245+
### **For MIB Management**
246+
- βœ… Validate MIB syntax and dependencies
247+
- βœ… Explore MIB structures interactively
248+
- βœ… Search OIDs across multiple MIBs
249+
- βœ… Resolve OID names ↔ numeric OIDs
250+
251+
### **For Integration Testing**
252+
- βœ… Test SNMP integrations without production devices
253+
- βœ… Validate trap handling in dev environments
254+
- βœ… Simulate device responses for QA
255+
- βœ… Export walk data for automated testing
256+
257+
### **For Learning & Training**
258+
- βœ… Understand SNMP protocol behavior
259+
- βœ… Explore standard MIB structures
260+
- βœ… Practice SNMP operations safely
261+
- βœ… Learn OID hierarchies visually
262+
263+
---
264+
265+
## πŸ‘₯ Best For
266+
267+
- πŸ”§ **Network engineers** testing devices and exploring MIB structures
268+
- πŸš€ **DevOps teams** testing SNMP integrations
269+
- πŸ“š **Students** learning SNMP protocols and MIB hierarchies
270+
- βœ… **QA teams** validating SNMP implementations
271+
- πŸ‘₯ **Small teams** needing trap monitoring and MIB browsing
272+
- πŸ§ͺ **Developers** building SNMP-enabled applications
273+
274+
---
275+
276+
## ⚠️ Not For
277+
278+
- ❌ Production 24/7 monitoring (use Zabbix, PRTG, LibreNMS)
279+
- ❌ Enterprise-scale NMS (use SolarWinds, Cisco Prime)
280+
- ❌ High-availability monitoring (use dedicated monitoring platforms)
281+
282+
---
283+
162284
## πŸ”§ Configuration
163285

164286
### Environment Variables
@@ -222,25 +344,6 @@ docker-compose build
222344

223345
---
224346

225-
## πŸ‘₯ Best For
226-
227-
- πŸ”§ **Network engineers** testing devices and exploring MIB structures
228-
- πŸš€ **DevOps teams** testing SNMP integrations
229-
- πŸ“š **Students** learning SNMP protocols and MIB hierarchies
230-
- βœ… **QA teams** validating SNMP implementations
231-
- πŸ‘₯ **Small teams** needing trap monitoring and MIB browsing
232-
- πŸ§ͺ **Developers** building SNMP-enabled applications
233-
234-
---
235-
236-
## ⚠️ Not For
237-
238-
- ❌ Production 24/7 monitoring (use Zabbix, PRTG, LibreNMS)
239-
- ❌ Enterprise-scale NMS (use SolarWinds, Cisco Prime)
240-
- ❌ High-availability monitoring (use dedicated monitoring platforms)
241-
242-
---
243-
244347
## πŸ’– Support This Project
245348

246349
Trishul-SNMP is **100% free and open-source**. If it helps you, consider:

0 commit comments

Comments
Β (0)