如何从某个区域制作特殊查询日志文件。
虽然我当前的日志配置是
logging {
channel query_logging {
file "/var/log/named/query.log" versions 5>
//severity debug 1;
print-time yes;
//print-severity yes;
//print-category yes;
};
category queries {
query_logging;
};
};
该配置记录来自任何区域的所有查询并将其保存到一个文件中。我想要的是我想要记录指定区域并将日志保存到指定文件。
例如区域example.com
。
因此,对于任何包含 example.com 单词的查询行,都将保存到指定文件。
注意:我的区域是由视图封装的。
如果 bind 不能处理它,也许正则表达式可以做到?但是如何定期将正则表达式结果保存到文件中呢?我想知道如果使用正则表达式会浪费 CPU 资源。
你不能。
但是您可以将所有日志记录转发到 SyslogNG 或具有完整正则表达式功能的等效设备,以将给定流拆分为多个文件或其他接收器。
PS:也许该功能存在于其他名称服务器中,您是否有任何具体理由仅考虑
bind
?