2017-08-28 05:30:35 +02:00
|
|
|
## prometheus-mikrotik
|
|
|
|
|
2017-09-05 04:52:14 +02:00
|
|
|
tl;dr - prometheus exporter for mikrotik devices
|
2017-08-28 05:30:35 +02:00
|
|
|
|
2017-09-05 04:54:04 +02:00
|
|
|
This is still a work in progress .. consider `master` at the moment as a preview
|
|
|
|
release.
|
|
|
|
|
2017-08-28 05:30:35 +02:00
|
|
|
#### Description
|
|
|
|
|
2017-09-05 04:52:14 +02:00
|
|
|
A Prometheus Exporter for Mikrotik devices. Can be configured to collect metrics
|
|
|
|
from a single device or multiple devices. Single device monitoring can be configured
|
|
|
|
all on the command line. Multiple devices require a configuration file. A user will
|
|
|
|
be required that has read-only access to the device configuration via the API.
|
|
|
|
|
|
|
|
Currently the exporter collects metrics for interfaces and system resources. Others
|
|
|
|
can be added as long as published via the API.
|
|
|
|
|
|
|
|
#### Mikrotik Config
|
|
|
|
|
|
|
|
Create a user on the device that has API and read-only access.
|
|
|
|
|
|
|
|
`/user group add name=prometheus policy=api,read`
|
|
|
|
|
|
|
|
Create the user to access the API via.
|
|
|
|
|
|
|
|
`/user add name=prometheus group=prometheus password=changeme`
|
|
|
|
|
|
|
|
#### Single Device
|
|
|
|
|
|
|
|
`./mikrotik-exporter -address 10.10.0.1 -device my_router -password changeme -user prometheus`
|
|
|
|
|
|
|
|
where `address` is the address of your router. `device` is the label name for the device
|
|
|
|
in the metrics output to prometheus. The `user` and `password` are the ones you
|
|
|
|
created for the exporter to use to access the API.
|
|
|
|
|
|
|
|
###### example output
|
|
|
|
|
|
|
|
```
|
|
|
|
mikrotik_interface_tx_byte{address="10.10.0.1",interface="ether2",name="my_router"} 1.4189902583e+10
|
|
|
|
mikrotik_interface_tx_byte{address="10.10.0.1",interface="ether3",name="my_router"} 2.263768666e+09
|
|
|
|
mikrotik_interface_tx_byte{address="10.10.0.1",interface="ether4",name="my_router"} 1.6572299e+08
|
|
|
|
mikrotik_interface_tx_byte{address="10.10.0.1",interface="ether5",name="my_router"} 1.66711315e+08
|
|
|
|
mikrotik_interface_tx_byte{address="10.10.0.1",interface="ether6",name="my_router"} 1.0026481337e+10
|
|
|
|
mikrotik_interface_tx_byte{address="10.10.0.1",interface="ether7",name="my_router"} 3.18354425e+08
|
|
|
|
mikrotik_interface_tx_byte{address="10.10.0.1",interface="ether8",name="my_router"} 1.86405031e+08
|
|
|
|
```
|
|
|
|
|
|
|
|
|