From e400618a991c17a2e835d487160b8b918dec4cef Mon Sep 17 00:00:00 2001 From: Nicolai Langfeldt Date: Thu, 14 Jul 2011 11:54:11 +0000 Subject: [PATCH] * linux/irqstats: Make --logarithmic and enhance information --- plugins/node.d.linux/irqstats.in | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/plugins/node.d.linux/irqstats.in b/plugins/node.d.linux/irqstats.in index fa1cdf12bb..9245db9224 100644 --- a/plugins/node.d.linux/irqstats.in +++ b/plugins/node.d.linux/irqstats.in @@ -136,17 +136,25 @@ if (defined $ARGV[0] && $ARGV[0] eq 'config') { print 'graph_title Individual interrupts', defined($cpu) ? " on CPU $cpu\n" : "\n"; print <{irq}} @irqs), "\n"; for my $irq (@irqs) { my $f = ($irq->{label} || $irq->{irq}); $f = $irq->{irq} if (length ($f) > 47); print "i", $irq->{irq}, '.label ', $f, "\n"; - print "i", $irq->{irq}, '.info Interrupt ', $irq->{irq}, ', for device(s): ', $irq->{label}, "\n" - if $irq->{label}; + if ( $irq->{label} ) { + print "i", $irq->{irq}, '.info Interrupt ', $irq->{irq}, ', for device(s): ', $irq->{label}, "\n" + } elsif ( $irq->{irq} =~ /NMI/i ) { + print "i", $irq->{irq}, ".info Nonmaskable interrupt. Either 0 or quite high. If it's normaly 0 then just one NMI will often mark some hardware failure.\n"; + } elsif ( $irq->{irq} =~ /LOC/i ) { + print "i", $irq->{irq}, ".info Local (pr. CPU core) APIC timer interrupt. Until 2.6.21 normaly 250 or 1000 pr second. On modern 'tickless' kernels it more or less reflects how busy the machine is.\n"; + } + print "i", $irq->{irq}, ".type DERIVE\n"; print "i", $irq->{irq}, ".min 0\n"; print_thresholds("i$irq->{irq}");