次のエントリ: 絵文字のコード [携帯]
BINDの統計情報
2005-07-06-2 / カテゴリ: [linux][debian][bind] / [permlink]
# rndc statsこのコマンドで、/var/cache/bind/named.stats ファイルに
+++ Statistics Dump +++ (1120658402) success 10741 referral 0 nxrrset 1253 nxdomain 242898 recursion 6834 failure 23 --- Statistics Dump --- (1120658402)というファイルができる。
それぞれ
success | 成功した問い合わせの数(参照先以外の応答を返したもの) |
referral | 結果として参照先を返した問い合わせの件数。 |
nxrrset | 要求されたタイプのレコードが定義されていないドメイン名に関する問い合わせの件数。 |
nxdomain | 存在しないドメインネームを問い合わせた数。 |
recursion | ゾーン内のドメイン名に関する再帰的問い合わせの内、ネームサーバが更に問い合わせをしなければいけなかった件数。 |
failure | NXDOMAIN以外で失敗した問い合わせの数。 |
ということ。(DNS&BIND クックブックp115より引用)
で、再度実行すると、前回実行したファイルの末尾に追記され続けるので、前回実行時との差分を実行間隔(括弧内のepochの差分)で割れば、秒間の問い合わせ平均数がわかる。
けど、何行ものログから、末尾2件分のparseはなかなかメンドイので(ラスト1件分だけ取得して、RRDtoolなんかに差分計算させる手もあるけど)、うちでは、実行前にファイル退避・rndc stats 実行・差分計算・結果をRRDtoolに食わせる、という感じ。
crontab (実際は1行)
0 * * * * /bin/mv /var/cache/bind/named.stats /var/cache/bind/named.stats.bak; /usr/sbin/rndc stats; /root/bin/bindstat/bindstats.plx > /var/cache/bind/named.diff
bindstats.plx
#!/usr/bin/perl my %logfile = ( new => "/var/cache/bind/named.stats", old => "/var/cache/bind/named.stats.bak", ); my %logstat; foreach my $key (keys %logfile) { open F, $logfile{$key} or die "cannot open $logfile{$key}: $!\n"; while (<F>) { if (/^([a-z]+)\s(\d+)/) { $logstat{$key}->{$1} = $2; } } close F; } foreach my $item (sort keys %{$logstat{new}}) { print $item, ": ", ($logstat{new}->{$item} - $logstat{old}->{$item}), "\n"; }
これで、前回実行時との差分値が named.diff に出るので
failure: 0 nxdomain: 451 nxrrset: 7 recursion: 94 referral: 0 success: 109このファイルの値を RRDtool につっこむ。
うーん、、、なんでこんなに名前解決にミスってんだろ^^;
次のエントリ: 絵文字のコード [携帯]
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
最終更新時間: 2013-05-02 16:12