Go to file
Christian Stade-Schuldt d7929f15fc fix up_traffic 2021-04-29 09:12:52 +02:00
.gitignore update scripts for FRITZ!OS:131.06.36-32026 BETA 2015-12-19 11:34:21 +01:00
CONTRIBUTORS.md update README and Contributors 2017-11-04 17:04:42 +01:00
Changelog.md Update login for Fritz!OS 7.25 compatibility (#52) 2021-03-26 15:19:02 +01:00
LICENSE Initial commit 2015-06-02 23:37:01 +02:00
README.md Update login for Fritz!OS 7.25 compatibility (#52) 2021-03-26 15:19:02 +01:00
fritzbox_connection_uptime.py Update login for Fritz!OS 7.25 compatibility (#52) 2021-03-26 15:19:02 +01:00
fritzbox_cpu_temperature.py Update login for Fritz!OS 7.25 compatibility (#52) 2021-03-26 15:19:02 +01:00
fritzbox_cpu_usage.py Update login for Fritz!OS 7.25 compatibility (#52) 2021-03-26 15:19:02 +01:00
fritzbox_helper.py remove f-strings and one minor bug 2021-03-29 19:36:20 +02:00
fritzbox_memory_usage.py Update login for Fritz!OS 7.25 compatibility (#52) 2021-03-26 15:19:02 +01:00
fritzbox_power_consumption.py Update login for Fritz!OS 7.25 compatibility (#52) 2021-03-26 15:19:02 +01:00
fritzbox_traffic.py fix up_traffic 2021-04-29 09:12:52 +02:00
fritzbox_uptime.py Update login for Fritz!OS 7.25 compatibility (#52) 2021-03-26 15:19:02 +01:00
fritzbox_wifi_devices.py Update login for Fritz!OS 7.25 compatibility (#52) 2021-03-26 15:19:02 +01:00
requirements.txt Update login for Fritz!OS 7.25 compatibility (#52) 2021-03-26 15:19:02 +01:00

README.md

fritzbox-munin

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.

Introduction

These python scripts are Munin plugins for monitoring the Fritz!Box router by AVM.

fritzbox_traffic

fritzbox_traffic shows you the traffic of the WAN interface (requires fritzconnection) http://i.imgur.com/8BwNMOL.png

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

fritzbox_connection_uptime shows you the connection uptime in days (requires fritzconnection) http://i.imgur.com/8oE1OYL.png

fritzbox_cpu_usage

fritzbox_cpu_usage shows you the cpu usage (requires username & password) http://i.imgur.com/A9uGvWP.png

fritzbox_cpu_temperature

fritzbox_cpu_temperature shows you the cpu temperature (requires username & password) http://i.imgur.com/duHYhw6.png

fritzbox_memory_usage

fritzbox_memory_usage shows you the memory usage (requires username & password) http://i.imgur.com/WhxrINK.png

fritzbox_power_consumption

fritzbox_power_consumption shows you the power consumption (requires username & password) http://i.imgur.com/a7uQzn6.png

fritzbox_uptime

fritzbox_uptime shows you the uptime in days (requires username & password) (language dependant, see below). http://i.imgur.com/Jr8OibH.png

fritzbox_wifi_devices

fritzbox_wifi_devices shows you the number of connected wifi clients (requires username & password) (language dependant, see below). http://i.imgur.com/lqvK1b2.png

Installation & Configuration

  1. 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.

  1. Make sure the FritzBox has UPnP status information enabled. (German interface: Heimnetz > Heimnetzübersicht > Netzwerkeinstellungen > Statusinformationen über UPnP übertragen)

  2. Copy all the scripts to /usr/share/munin/plugins

  3. 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
    
  4. Create symbolic links to /etc/munin/plugins.

  5. Restart the munin-node daemon: /etc/init.d/munin-node restart.

  6. Done. You should now start to see the charts on the Munin pages.

Localization

Two scripts depend on the language selected in your fritzbox: the uptime and wifi_devices. Currently, two locales are supported:

  1. German: de (default)
  2. English: en

You can change the used locale by setting an environment variable in your plugin configuration:

env.locale en

Different hosts for the fritzbox and your system

You can split the graphs of your fritzbox from the localhost graphs by following the next steps:

  1. 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
    
  2. Add the following to your munin-node configuration

    env.host_name fritzbox

  3. Restart your munin-node: systemctl restart munin-node

Environment Settings

Do not forget to restart the munin-node daemon as described in step 3 of the installation instructions above.