Modify

Opened 7 years ago

Closed 4 years ago

#7167 closed enhancement (fixed)

bug fix, speed improvement for munin-node,

Reported by: Bushmills Owned by: cshore
Priority: normal Milestone:
Component: packages Version:
Keywords: muninlite, munin-node, system monitor Cc:

Description

The accompanying patch, besides pointing out per comment several places where improvements are possible, fixes a bug, which causes the polling machine to relentlessly bombard the admin with error emails.
At least when running munin-node on my TP-Link TL-WR1043ND router. It also reduces processing time of cpu time acquisition considerable, by avoiding two shell invocations per output line.
It furthermore points out in comments that additional dependencies exist, in the current configuration: netstat plugin depends on netstat executable from package net-tools, busybox nettools lacks a command line switch which is uses in munin-node. plugin if_ depends on ethtool which is not installed by default. Either disable these plugins in the default config, or add ethtool and net-tools to the dependencies of package muninlite.

Attachments (10)

munin-node.patch (7.1 KB) - added by L.Schmidt <l.openwrt at scarydevilmonastery.net> 7 years ago.
patch against munin-node 1.0.2 - forgot to bump version number
munin-node.2.patch (7.1 KB) - added by L.Schmidt <l.openwrt at scarydevilmonastery.net> 7 years ago.
bumped version number. output of diff -urN, not just of diff -u
munin-node (20.1 KB) - added by L.Schmidt <l.openwrt at scarydevilmonastery.net> 7 years ago.
whole script, 1.0.2b - added volume usage graphs, performance gains. selection of if_ and netstat depends on presence of required executables.
munin-node.2 (18.9 KB) - added by L.Schmidt <l.openwrt at scarydevilmonastery.net> 7 years ago.
1.0.2c some fetch_mem/config_memfactoring. mem type names updated to recent kernel. removal of some unneeded cats
munin-node.3 (18.1 KB) - added by L.Schmidt <l.openwrt at scarydevilmonastery.net> 7 years ago.
1.0.2d collapsed memtypes to a single line instead of repeated parse pipes.
munin-node.4 (18.1 KB) - added by L.Schmidt <l.openwrt at scarydevilmonastery.net> 7 years ago.
Typo "AtiveAnon" instead "ActiveAnon" prevents graph update. Fixed
munin-node.5 (18.1 KB) - added by L.Schmidt <l.openwrt at scarydevilmonastery.net> 7 years ago.
omission to set graph.max to new mem name, and assigned mem names too late in config_memory. Fixed.
munin-node.6 (17.5 KB) - added by L.Schmidt <l.openwrt at scarydevilmonastery.net> 7 years ago.
v1.03 further simplification of memory plugin code
wifi_signal (896 bytes) - added by georg@… 7 years ago.
WiFi signal plugin (for client mode), displays signal and noise per device
munin-node.7 (17.6 KB) - added by L.Schmidt <l.openwrt at scarydevilmonastery.net> 7 years ago.
v1.0.3b adds a new graph, showing the top ten memory consuming processes as AREA stack by name

Download all attachments as: .zip

Change History (17)

Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

patch against munin-node 1.0.2 - forgot to bump version number

Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

bumped version number. output of diff -urN, not just of diff -u

Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

whole script, 1.0.2b - added volume usage graphs, performance gains. selection of if_ and netstat depends on presence of required executables.

comment:1 Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

1.0.2b changes against 1.0.2:

  • added graphs for used/remaining device storage space.
  • fixed if bug which caused munin_limits to flood admin with error emails
  • fetch_cpu speedup
  • netstat if_ if_err_ plugins selection by presence of required netstat and ethtool programs
  • (busybox version of netstat has no --statistics switch which is used here)
  • changed many "grep ... | cut ..." against "awk /.../ {print ..}" because latter is about 50% faster

Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

1.0.2c some fetch_mem/config_memfactoring. mem type names updated to recent kernel. removal of some unneeded cats

comment:2 Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

update of memory type names from /proc/meminfo, according to recent kernel convention, has the effect that memory types which has were not displayed before, because having been missed (as result of parsing wrong, non-existant memory types) are now displayed, giving more detail to the "apps" memory - which was mostly a single green area before:
current memory display

Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

1.0.2d collapsed memtypes to a single line instead of repeated parse pipes.

comment:3 Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

1.0.2d

  • extra df devices, besides the autoprobed ones, can be specified through df_extra variable
  • memorytypes collapsed to a single line, instead of repeated parse pipes. Much faster.

Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

Typo "AtiveAnon" instead "ActiveAnon" prevents graph update. Fixed

Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

omission to set graph.max to new mem name, and assigned mem names too late in config_memory. Fixed.

Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

v1.03 further simplification of memory plugin code

Changed 7 years ago by georg@…

WiFi signal plugin (for client mode), displays signal and noise per device

Changed 7 years ago by L.Schmidt <l.openwrt at scarydevilmonastery.net>

v1.0.3b adds a new graph, showing the top ten memory consuming processes as AREA stack by name

comment:4 Changed 6 years ago by jijo@…

munin-node, as late as munin-node.7, fails if ethtool returns "Speed: Unknown! (0)" as it does on eth1 on my router. The fix for this is to replace line 205 of munin-node.7 as follows:

if $ethtool $1 2> /dev/null | grep Speed | grep -qv Unknown; then

comment:5 Changed 6 years ago by cshore

  • Owner changed from developers to cshore
  • Status changed from new to assigned

comment:6 Changed 6 years ago by cshore

  • Status changed from assigned to accepted

I like muninlite and am a dev, so will be looking into this soon.

comment:7 Changed 4 years ago by florian

  • Resolution set to fixed
  • Status changed from accepted to closed

muninlite is at 1.0.4, if there are still issues with it, please open a new ticket.

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.