Debug flags for sendmail

There are a large number of debug flags built into the sendmail command.

Each debug flag has a number and level, where higher levels print more information. The convention is levels greater than nine print out so much information that they are used only for debugging a particular piece of code. Debug flags are set using the -d flag as shown in the following example:

debug-flag:     -d debug-list 
debug-list:     debug-flag[.debug-flag]* 
debug-flag:     debug-range[.debug-level] 
debug-range:    integer|integer-integer 
debug-level:    integer
-d12            Set flag 12 to level 1 
-d12.3          Set flag 12 to level 3 
-d3-17          Set flags 3 through 17 to level 1 
-d3-17.4        Set flags 3 through 17 to level 4

The available debug flags are:

Item Description
-d0 General debugging.
-d1 Show send information.
-d2 End with finis( ).
-d3 Print the load average.
-d4 Enough disk space.
-d5 Show events.
-d6 Show failed mail.
-d7 The queue file name.
-d8 DNS name resolution.
-d9 Trace RFC1413 queries.
-d9.1 Make host name canonical.
-d10 Show recipient delivery.
-d11 Trace delivery.
-d12 Show mapping of relative host.
-d13 Show delivery.
-d14 Show header field commas.
-d15 Show network get request activity.
-d16 Outgoing connections.
-d17 List MX hosts.

Note: There are now almost 200 defined debug flags in sendmail.