A collection of munin plugins to monitor your AVM FRITZ!Box router. The scripts have been developed using a FRITZ!Box 7590(Amazon link) running FRITZ!OS 7.25.
If you are using the scripts on a different Fritz!Box model please let me know by
opening an issue
submitting a pull request
So far the following models (running FRITZ!OS 06.83) have been confirmed working:
If you are still running an older Fritz!OS version check out the releases section.
These python scripts are Munin plugins for monitoring the Fritz!Box router by AVM.
fritzbox_traffic shows you the traffic of the WAN interface (requires fritzconnection)
If you do not want to show the interface maximum values, add the following to your plugin-configuration:
env.traffic_remove_max true
fritzbox_connection_uptime shows you the connection uptime in days (requires fritzconnection)
fritzbox_cpu_usage shows you the cpu usage (requires username & password)
fritzbox_cpu_temperature shows you the cpu temperature (requires username & password)
fritzbox_memory_usage shows you the memory usage (requires username & password)
fritzbox_power_consumption shows you the power consumption (requires username & password)
fritzbox_uptime shows you the uptime in days (requires username & password) (language dependant, see below).
fritzbox_wifi_devices shows you the number of connected wifi clients (requires username & password) (language dependant, see below).
Pre-requesites for the fritzbox_traffic and fritzbox_uptime plugins are the fritzconnection and requests package. To install it
pip install -r requirements.txt
fritzconnection requires python3. Make sure python --version is >= 3.6.
Make sure the FritzBox has UPnP status information enabled. (German interface: Heimnetz > Heimnetzübersicht > Netzwerkeinstellungen > Statusinformationen über UPnP übertragen)
Copy all the scripts to /usr/share/munin/plugins
Create entry in /etc/munin/plugin-conf.d/munin-node
:
[fritzbox_*]
env.fritzbox_ip <ip_address_to_your_fritzbox>
env.fritzbox_username <fritzbox_username>
env.fritzbox_password <fritzbox_password>
env.traffic_remove_max true # if you do not want the possible max values
host_name fritzbox
Create symbolic links to /etc/munin/plugins
.
Restart the munin-node daemon: /etc/init.d/munin-node restart
.
Done. You should now start to see the charts on the Munin pages.
Two scripts depend on the language selected in your fritzbox: the uptime and wifi_devices. Currently, two locales are supported:
de
(default)en
You can change the used locale by setting an environment variable in your plugin configuration:
env.locale en
You can split the graphs of your fritzbox from the localhost graphs by following the next steps:
Use the following as your host configuration in /etc/munin/munin.conf
[home.yourhost.net;server]
address 127.0.0.1
use_node_name yes
[home.yourhost.net;fritzbox]
address 127.0.0.1
use_node_name no
Add the following to your munin-node configuration
env.host_name fritzbox
Restart your munin-node: systemctl restart munin-node
Do not forget to restart the munin-node daemon as described in step 3 of the installation instructions above.