Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/agn-7/snmp-manager

SNMP collector powered by asyncio event-loop.
https://github.com/agn-7/snmp-manager

asyncio docker docker-compose python python3 snmp snmp-collector

Last synced: about 10 hours ago
JSON representation

SNMP collector powered by asyncio event-loop.

Awesome Lists containing this project

README

        

[![PyPi version](https://badgen.net/pypi/v/snmp-manager/)](https://pypi.org/project/snmp-manager/)
[![PyPi license](https://badgen.net/pypi/license/snmp-manager/)](https://pypi.com/project/snmp-manager/)
[![PyPI pyversions](https://img.shields.io/pypi/pyversions/snmp-manager.svg)](https://pypi.python.org/pypi/snmp-manager/)
[![Docker](https://badgen.net/badge/icon/docker?icon=docker&label)](https://https://docker.com/)
[![build](https://github.com/agn-7/snmp-manager/workflows/build/badge.svg)](https://github.com/agn-7/snmp-manager/actions/workflows/github-actions.yml)
[![codecov](https://codecov.io/gh/agn-7/snmp-manager/branch/master/graph/badge.svg?style=flat-square)](https://codecov.io/gh/agn-7/snmp-manager)
[![black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)

# SNMP Collector Powered by Asyncio

Collecting data from SNMP Agents using `python-asyncio` method.

### Setup using docker

Up and build docker container:
```bash
docker-compose up --build -d
```

### Setup Without docker:

Install requirements:

```bash
pip install -r requirements.txt
```

Configure the desire OID(s) and metrics:

```bash
nano snmp_collector/config/cofig.json
```

Run:

```bash
python snmp_collector
```

### Setup through `pip`

```bash
pip install snmp-manager
```
Configuration:

Create a json config file with the following format:

```
[
{
"isEnable": true,
"name": "snmp-model-1",
"address": "192.168.1.120",
"port": 161,
"timeout": 1,
"retries": 3,
"version": 2,
"sleep_time": 5,
"gain": 1,
"offset": 0,
"community": "public",
"metrics": [
{
"isEnable": true,
"tag_name": "a-sample",
"oid": "1.3.6.13.4.1.3.1112"
}
],
"meta_data": [{'key': 'value'}]
}
]
```

Run:

```bash
python -m snmp_collector --config=
```

---
[**NOTE**]:

- The value of `-8555` means a problem is occurred during reading data over SNMP or in connection.