Мы хотим отслеживать использование кеша наших DNS-серверов BIND 9. Есть ли способ регистрировать попадания и промахи кеша? Мы безуспешно попробовали средства ведения журнала BIND (каналы, категории). Кроме того, «rndc stats» предоставляет только частичную информацию об использовании кеша. Спасибо за прочтение.
Вам нужна статистика, поэтому вы захотите прочитать, что говорится в Справочном руководстве администратора BIND. Статистика BIND. В частности:
В настоящее время существует два пользовательских интерфейса для доступа к статистике. Один из них в текстовом формате выгружается в файл, указанный в параметре конфигурации файла статистики. Другой доступен удаленно через канал статистики, если в файле конфигурации указан оператор 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 и преобразует их в формат JSON, понятный Zenoss. Затем счетчики могут быть нанесены на график. Вот пример того, что я делаю с графиком времени прохождения запроса туда и обратно через открытые счетчики RTT: