MRTG: Рисуем график количества обращений к MYSQL-серверу

Доброго времени суток. Никогда не было интересно  узнать как часто происходят обращения к Вашему MYSQL-серверу? Как оказалось, это не трудно реализовать. И так, ближе к делу: 1. Вы должны настроить MRTG (Multi Router Traffic Grapher). О том как это сделать - можно почитать перейдя по этой ссылке http://silverghost.org.ua/2008/05/04/svyazka-snmpd-mrtg/(SNMP в этом случае не обязательно). 2. Создать скрипт, который с помощью команд MYSQL SHOW STATUS будет получать информацию о количестве запросов к серверу. На графике будет показано зеленым количество запросов в секнду SELECT, а синим количество запросов в секунду INSERT/UPDATE/DELETE. Назовем его mrtg-mysql.pl и установим права на выполнение.
  #!/usr/bin/perl use strict;use DBI; my $dbh=DBI->connect("dbi:mysql:dbname=mysql;host=localhost","root","password"); my $select=0;my $modify=0; my $sql="SHOW GLOBAL STATUS LIKE 'Com_%'";my $sth=$dbh->prepare($sql) or die;$sth->execute or die;while(my ($key,$val)=$sth->fetchrow) {  if($key eq "Com_select") { $select=$val; }  if($key eq "Com_insert" || $key eq "Com_insert_select" ||     $key eq "Com_replace" || $key eq "Com_replace_select" ||     $key eq "Com_update" || $key eq "Com_update_multi" ||     $key eq "Com_delete" || $key eq "Com_delete_multi") { $modify+=$val; }} print $select,"\n",$modify,"\n";
Где вместо "password" нужно указать рутовый пароль для подключения к mysql. 3.  В /etc/mrtg.cfg добавляем следующее:
  #  MYSQL SERVER       # Title[mysql-s]: MYSQL SERVER PNGTitle[mysql-s]: MYSQL SERVER MaxBytes[mysql-s]: 100 AbsMax[mysql-s]: 100 Options[mysql-s]: growright, bits PageTop[mysql-s]: <h1> Mysql Server</h1> Target[mysql-s]: `/root/scripts/mrtg-mysql.pl` YLegend[mysql-s]: Queries/Second ShortLegend[mysql-s]: q/s LegendI[mysql-s]: Select LegendO[mysql-s]: Modify WithPeak[mysql-s]: ymwd_multi"
Где Target[mysql-s]: `/root/scripts/mrtg-mysql.pl` адрес к скрипту, который мы только что создавали. Ну а дальше Вы можете все параметры настроить на свой вкус. :) На этом все :)  
Вы можете оставить комментарий, или поставить трэкбек со своего сайта.

5 комментариев(я)

(Обязательно)
(Обязательно, не публикуется)

Пропала собака. yandex.ru не предлагать.
Яндекс.Метрика beget