BIND 9DNSサーバーのキャッシュ使用量を追跡したいと考えています。キャッシュのヒットとミスをログに記録する方法はありますか?運が悪かったので、BINDロギング機能(チャネル、カテゴリ)を試しました。また、「rndc stats」は、キャッシュの使用状況に関する部分的な情報のみを提供します。読んでくれてありがとう。
あなたは統計を探しているので、BIND管理者リファレンスマニュアルが BIND統計 について述べていることを読みたいと思うでしょう。特に:
現在、統計にアクセスするための2つのユーザーインターフェイスがあります。 1つは、statistics-file構成オプションで指定されたファイルにダンプされたプレーンテキスト形式です。もう1つは、構成ファイルでstatistics-channelsステートメントが指定されている場合、統計チャネルを介してリモートでアクセスできます(「statistics-channelsステートメントの文法」のセクションを参照)。
統計は、ファイルシステムにローカルにダンプすることも、統計チャネルを介してHTTP経由で公開することもできます。後者の場合、XMLまたはJSONを解析することにより、監視システムを介してリモートでカウンターを収集できます。後者のアプローチは間違いなく便利ですが、HTTPソケットが信頼できないソースに公開されていないことを確認する必要があります。
statistics-channels {
inet 127.0.0.1 port 5302
allow { 127.0.0.1; };
inet 192.0.2.1 port 5302
allow { mgt-acl; monitor-acl; };
};
私の特定のケースでは、curl
およびjq
ベースのパーサーを作成しました。このパーサーは、対象のJSONカウンターを取得し、Zenossが理解できるJSON形式に変換します。その後、カウンターをグラフ化できます。これは、公開されたRTTカウンターを介してクエリのラウンドトリップ時間をグラフ化することで行っている例です。