Knowledge base

Logs

critical

Logs Display
Node files through a browser

Lists the log and accounting files available now, with download links.

A way to read the log without logging into the machine — and at the same time a way to read it for anyone who has reached the monitor port: logs and accounting hold recipient addresses and receiver replies.

To close the files while keeping the monitor, use the deny-logs qualifier on the monitor level in http-access.

For a program — the /logs?format=json list and a file by name with /getFile?file=….

The main trap is giving the monitor level “just to look at the queues”. Without the deny-logs qualifier it opens this page as well: along with the queues the address gets logs and accounting — recipients and bounce texts.
What the Hub does. It does not use the page: accounting events reach the Hub as a stream through the webhook, and it computes the “Accounting statistics” summaries on the node itself over SSH. The Hub gives its own addresses in http-access the monitor level without deny-logs, so this page is formally open to them.
Recommended values

What question the page answers:

Question This one or not
which logs and accounting files exist yes
download a file without logging into the machine yes
what happened to the messages yesterday yes — through the accounting file, until it is deleted
The page contents, downloading and the deny-logs qualifier come from the manual (§ 5.11, § 3.3.1.58.3). The conclusion about leaks is ours.
Example configuration
# close the files to an address that only needs the monitor
http-access 10.0.0.0/8 monitor,deny-logs
The qualifier is written after a comma right after the level; the other monitor pages stay available to this address.
yellow — — directive names, blue — blocks. They are highlighted the same way in the text of the card.
Compatibility
PowerMTA 6.0
described in the manual of this version · platform: any
The vendor does not state the first version for every directive — there is no note here. The name also appears in the 5.0 edition of the manual.
How to check on the node
Check whether the files are open to the requesting address:
grep -n 'http-access' /etc/pmta/config
curl -s -o /dev/null -w "%{http_code}\n" 'http://127.0.0.1:8080/logs?format=json'
Code 403 on the list while the monitor is open means the address has deny-logs.
In the Hub
Cost of a mistake
safe: a wrong value breaks nothing
Scenarios
Untangle a stuck queue · Collect telemetry
Priority
critical