无论linux还是windows下的日志对于排查问题,是相当重要的。
DNS日志可以记录服务器CPU的占用时间、查询的统计信息及配置中存在的问题,经常分析日志可以了解服务器的负载、性能、安全性,从而及时地采取措施,纠正错误。BIND软件默认情况下把DNS日志写到/var/log/messages文件中。
由于这个文件中的日志信息是由syslog生成的,所以并不全是关于BIND的日志信息,要详细分类地记录DNS服务器的运行状况,我们应修改配置文件named.conf,使用logging命令:
其中channel定义了通道的名称,按自己需要可以定义多个通道,每个通道指定了存放日志的文件名、文件个数及大小,还定义了要记录消息的等级(如critical, error, warning, notice, info, debug, dynamic),并指定日志内容是否包括时间和消息的类别。Category定义消息的类别(如default, general, client, config, database, dnssec, lame-servers, network, notify, queries, resolver, security, update, xfer-in, xfer-out),并指明这类消息按照哪个通道的定义来进行记录。
上例中的第一个channel, default_log是自己定义的channel名称,/var/adm/dns-default.log是日志文件,可依次产生记录该类消息的4个文件(update_log, update_log0, update_log1, update_log2),依次更替,每个文件最大为10M。该日志记录的是除severity信息以外的告警信息。消息记录格式包括时间、消息等级和种类。