Search code examples
loggingdnsbindnamed

How to enable named/bind/DNS full logging?


I am trying to find the perfect logging clause in named.conf that would help me enable full-level logs for named service. Can someone give an example here? My current clause is given below, but this generates very minimal logs.

 logging {
     channel querylog{
             file "/var/log/querylog";
             severity debug 10;
             print-category yes;
             print-time yes;
             print-severity yes;
             };
     category queries { querylog;};
 };

Solution

  • I usually expand each log out into its own channel and then to a separate log file, certainly makes things easier when you are trying to debug specific issues. So my logging section looks like the following:

    logging {
        channel default_file {
            file "/var/log/named/default.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel general_file {
            file "/var/log/named/general.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel database_file {
            file "/var/log/named/database.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel security_file {
            file "/var/log/named/security.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel config_file {
            file "/var/log/named/config.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel resolver_file {
            file "/var/log/named/resolver.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel xfer-in_file {
            file "/var/log/named/xfer-in.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel xfer-out_file {
            file "/var/log/named/xfer-out.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel notify_file {
            file "/var/log/named/notify.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel client_file {
            file "/var/log/named/client.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel unmatched_file {
            file "/var/log/named/unmatched.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel queries_file {
            file "/var/log/named/queries.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel network_file {
            file "/var/log/named/network.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel update_file {
            file "/var/log/named/update.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel dispatch_file {
            file "/var/log/named/dispatch.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel dnssec_file {
            file "/var/log/named/dnssec.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
        channel lame-servers_file {
            file "/var/log/named/lame-servers.log" versions 3 size 5m;
            severity dynamic;
            print-time yes;
        };
    
        category default { default_file; };
        category general { general_file; };
        category database { database_file; };
        category security { security_file; };
        category config { config_file; };
        category resolver { resolver_file; };
        category xfer-in { xfer-in_file; };
        category xfer-out { xfer-out_file; };
        category notify { notify_file; };
        category client { client_file; };
        category unmatched { unmatched_file; };
        category queries { queries_file; };
        category network { network_file; };
        category update { update_file; };
        category dispatch { dispatch_file; };
        category dnssec { dnssec_file; };
        category lame-servers { lame-servers_file; };
    };