Debugging and logs

If you encounter problems, there are a few things that might help you understand what is going on with your delivery.

Delivery problems

One of the most common problems when running your own mail server is delivery refusal. PRO version has the advantage of log viewer, which visually helps to identify the problem in the most common cases.

PRO version

in summary detail:

Although this example is clearly quarantined spam, some cases may not be as straightforward and may require more detail, even with logs and internal debug messages included. This is mostly needed for reporting bugs to support, as the raw logs give us enough information about the processing.

For the FREE version and more complicated cases where the delivery transaction does not even start, you may find useful debug logs located at log/delivery.

$ ls -1

$ grep *-total
2022-04-26-total:2022-04-26T07:07:24.507Z [36C26C1A-88AA-49B2-B4EA-BE43286094B6.1] () <> -> <>( - [17.113239][<>] 250 Quarantined! (36C26C1A-88AA-49B2-B4EA-BE43286094B6.1)


$ grep *-total
2022-04-26-total:2022-04-26T07:07:24.507Z [36C26C1A-88AA-49B2-B4EA-BE43286094B6.1] () <> -> <>( - [17.113239][<>] 250 Quarantined! (36C26C1A-88AA-49B2-B4EA-BE43286094B6.1)

Now that we have obtained the connection and transaction ID we can investigate further (36C26C1A-88AA-49B2-B4EA-BE43286094B6.1).

Interested folders are: - conn - connection initialisation logs part with blacklist, whitelist, IP karma and reputation checks. - tx - transaction logs - sender and recipient, and mail itself - del - outbound delivery logs

(For more details, see Haraka internals.)

Connection log:

$ cat conn/3/6/36C26C1A-88AA-49B2-B4EA-BE43286094B6

2022-04-26T07:06:47.351Z [NOTICE] [core] connect ip= port=31211 local_ip= local_port=25
2022-04-26T07:06:47.351Z [DEBUG] [core] running connect_init hooks
2022-04-26T07:06:47.351Z [DEBUG] [core] running connect_init hook in guard plugin
2022-04-26T07:06:47.353Z [DEBUG] [core] hook=connect_init plugin=guard function=hook_connect_init params="" retval=CONT msg=""

Transaction log:

$ cat tx/3/6/36C26C1A-88AA-49B2-B4EA-BE43286094B6.1

2022-04-26T07:06:59.410Z [DEBUG] [core] running mail hooks
2022-04-26T07:06:59.410Z [DEBUG] [core] running mail hook in karma plugin
2022-04-26T07:06:59.410Z [DEBUG] [karma] tarpit capped to: 4

Delivery log:

(not available as original email was quarantined internally)

$ cat del/3/6/36C26C1A-88AA-49B2-B4EA-BE43286094B6.1
cat: del/3/6/36C26C1A-88AA-49B2-B4EA-BE43286094B6.1: No such file or directory

Haraka crashing problems

There may be extreme cases where Haraka fails spectacularly and doesn't generate a transaction log. Then there is the nodejs output log to look at for help: - log/s6/haraka-smtp/current (port 25) - log/s6/haraka-submission/current (port 465 and 582)

Dovecot problems (imap, pop3, sieve, lmtp)

Most information can be found in log/syslog, Dovecot implementation is based on default settings. For a detailed description of the logs or the increasing verbosity of Dovecot, see the official documentation.