PATH:
etc
/
munin
/
plugins
#!/usr/local/cpanel/3rdparty/perl/542/bin/perl # -*- perl -*- =head1 NAME mysql_queries - Munin plugin to display MySQL query rate. =head1 APPLICABLE SYSTEMS Any MySQL platform =head1 CONFIGURATION [mysql*] user root env.mysqlopts <options-for-mysqladmin-here> env.mysqladmin <optional-override-of-mysqladmin-path> It is most usual that root must run the mysqladmin command. Only use the .env settings if you need to override the defaults. =head1 INTERPRETATION To Be Written =head1 BUGS None known =head1 AUTHOR Copyright 2003-2008 - Per Andreas Buer =head1 LICENSE GPLv2 =head1 MAGIC MARKERS #%# family=manual #%# capabilities=autoconf =cut use strict; my $MYSQLADMIN = $ENV{mysqladmin} || "mysqladmin"; my $COMMAND = "$MYSQLADMIN $ENV{mysqlopts} extended-status"; my @WANTED_ORDER = ( "Com_select", "Com_delete", "Com_insert", "Com_update", "Com_replace", "Qcache_hits" ); my %WANTED = ( "Com_delete" => "delete", "Com_insert" => "insert", "Com_select" => "select", "Com_update" => "update", "Com_replace" => "replace", "Qcache_hits" => "cache_hits", ); my $arg = shift(); if ($arg eq 'config') { print_config(); exit(); } elsif ($arg eq 'autoconf') { unless (test_service() ) { print "yes\n"; } else { print "no\n"; } exit 0; } open(SERVICE, "$COMMAND |") or die("Could not execute '$COMMAND': $!"); while (<SERVICE>) { my ($k, $v) = (m/(\w+).*?(\d+(?:\.\d+)?)/); next unless ($k); if (exists $WANTED{$k} ) { print("$WANTED{$k}.value $v\n"); } } close(SERVICE); sub print_config { my $num = 0; print("graph_title MySQL queries graph_args --base 1000 graph_vlabel queries / \${graph_period} graph_category mysql graph_info Note that this is a old plugin which is no longer installed by default. It is retained for compatability with old installations. graph_total total\n"); foreach my $key (@WANTED_ORDER){ my $title = $WANTED{$key}; print("$title.label ${title}\n", "$title.min 0\n", "$title.type DERIVE\n", "$title.max 500000\n", "$title.draw ", ($num) ? "STACK" : "AREA" , "\n", ); $num++; } } sub test_service { system ("$MYSQLADMIN --version >/dev/null 2>/dev/null"); if ($? == 0) { system ("$COMMAND >/dev/null 2>/dev/null"); if ($? == 0) { print "yes\n"; } else { print "no (could not connect to mysql)\n"; } } else { print "no (mysqladmin not found)\n"; } exit 0; }
[-] open_files
[edit]
[-] mysql_queries
[edit]
[-] interrupts
[edit]
[-] df
[edit]
[-] processes
[edit]
[-] exim_mailqueue
[edit]
[-] mysql_slowqueries
[edit]
[-] entropy
[edit]
[-] open_inodes
[edit]
[-] munin_stats
[edit]
[-] uptime
[edit]
[-] if_err_eth0
[edit]
[-] users
[edit]
[-] apache_processes
[edit]
[-] http_loadtime
[edit]
[-] irqstats
[edit]
[-] mysql_threads
[edit]
[+]
..
[-] diskstats
[edit]
[-] exim_mailstats
[edit]
[-] mysql_innodb
[edit]
[-] forks
[edit]
[-] df_inode
[edit]
[-] proc_pri
[edit]
[-] memory
[edit]
[-] netstat
[edit]
[-] vmstat
[edit]
[-] fw_packets
[edit]
[-] if_eth0
[edit]
[-] apache_accesses
[edit]
[-] mysql_bytes
[edit]
[-] load
[edit]
[-] threads
[edit]
[-] apache_volume
[edit]
[-] cpu
[edit]
[-] swap
[edit]