<feedback-loop-processor>
The line sets an address for messages the processor could not parse. The line is repeatable: there can be several addresses.
The difference from the neighboring line is subtle and important. forward-unmatched-to is about messages that were parsed but not recognized as a complaint: ordinary mail that landed on the same address. This one is about messages on which parsing broke: a damaged structure, an unexpected encoding, a truncated body.
The second is a sign of a malfunction, not of a stray message. Regular parsing failures mean some receiver is sending reports in a format the engine does not expect — and such messages are worth looking at by eye: they may need their own pattern in <email-patterns>.
There is no default: if it is not set, no forwarding happens, and you will not learn about parsing failures.
🔎 The line would be useful: a parsing failure in the feedback-loop-processor means some receiver is sending us complaints in a format the engine does not understand — which means part of the data does not reach the dashboard, and we do not know about it.
Route them to different mailboxes, not one:
| Line | What goes there | How often |
|---|---|---|
| forward-unmatched-to | stray mail to the processor’s address | constantly |
| this one | messages with broken parsing | rarely, and it is a signal |
# two mailboxes: stray mail and malfunction signals — kept apart <feedback-loop-processor> deliver-unmatched-email true forward-unmatched-to inbox@example.com forward-errors-to postmaster@example.com</feedback-loop-processor>
what people get wrong and how it ends1 mistake▶
our experience
2 relations
grep -i "parse\|malformed" /var/log/pmta/log | tail -20
3 articles
◇Who is allowed to submit mail and for whom to accept itOut of the box, the node accepts submission only from the machine itself; two different questions — “who can send through us” and “for whose addresses we accept mail” — are answered by different directives.◇Two inbound report processors and what to do with themBounces by message and complaints are parsed by two identically structured blocks; each has its own address list and its own pair of decisions about the message’s fate.◇Address lists — named and unnamedA list of addresses, domains, patterns or hashes; a named one is attached by directives such as suppression, an unnamed one lives inside an inbound mail processor.