I've enable debug logging options on the DNS server, and I'm trying to parse through the output in dns.log. Here's a guide from technet on how to use server debug logging options, but I can't find anything authoritative as to what the standard format for each field would be, let alone when details are included.
Here's a sample log line from the question What Do the Numbers In Parentheses Mean In My Windows DNS Debug Log?:
6/5/2013 10:00:32 AM 0E70 PACKET 00000000033397A0 UDP Rcv 10.161.60.71 5b47 Q [0001 D NOERROR] A (12)somecomputer(6)domain(3)com(0)
Unfortunately, that answer didn't go into what any of the other fields mean.
Technet's How DNS Works gives a good review of some of the fields, but nothing specific to the debug log formatting.
What are all the fields?
Bonus points for a powershell script that parses the info.
According to the question DNS debug log dns.log Format Review, the fields map as follows
Here's a list of the field level info:
Lookups
Here's a list of potential lookup values for each of the categories:
Flag Lookup:
0
- No error; successful update.1
- Format error; DNS server did not understand the update request.0x2
- DNS server encountered an internal error, such as a forwarding timeout0x3
- A name that should exist does not exist.0x4
- DNS server does not support the specified Operation code.0x5
- DNS server refuses to perform the update because0x6
- A name that should not exist does exist.0x7
- A resource record set that should not exist does exist.0x8
- A resource record set that should exist does not exist.0x9
- DNS server is not authoritative for the zone named in the Zone section.0xA
- A name used in the Prerequisite or Update sections is not within the zone specified by the Zone section.Record Type Lookup:
0x01
- Host record0x02
- Name server record0x05
- Alias record0x0C
- Reverse-lookup record0x0F
- Mail exchange record0x21
- Service record0xFB
- Incremental zone transfer record0xFC
- Standard zone transfer record0xFF
- All records DomainParsing Script
Here's a cmdlet from Arun Sabale on Read DNS debug log and generate output in readable CSV format.
After running the cmdlet, you can call it like this:
Script: