<domain>
The line tells the node to record proxy connection failures as tq accounting records β queue-level transient errors. The default is false.
π΄ And it silently does nothing if the tq type is not selected in any accounting block. The manual says this directly. That is, there are two conditions for it to work, and both are easy to forget.
Why it is needed. Without it a proxy failure looks in accounting like an ordinary delivery failure, indistinguishable from a receiving server refusal. And these are completely different troubles: one is fixed on your own side, the other with patience.
The line is per receiver. It makes sense to enable it where noticeable traffic goes through the proxy β or in the asterisk block if there is one proxy for everything.
π And the tq type is not selected in telemetry β the records are d, b, rb, t, feedback-loop. So a proxy failure does not reach the Hub as an accounting record: both lines would have to be enabled β this one and tq in the set of types. For now the Hub learns proxy state from its own checks, not from accounting.
It works only when two conditions are met:
| What | Where |
|---|---|
| this line | in the receiver block |
| the tq record type | in records of at least one accounting block |
tq records are voluminous β the vendor advises keeping them in a separate accounting file.
# two conditions in different places of the configuration <domain *> enable-tq-record-for-proxy-failure yes</domain> <acct-file /var/log/pmta/transient.csv> records tq </acct-file>
what people get wrong and how it ends1 mistakeβΆ
Β§ 3.3.10.107
2 relations
Temporary queue failureThe record type proxy failures go into. Β§ 3.3.10.107
cut -d, -f1 /var/log/pmta/transient.csv | sort | uniq -c
3 articles
βFour value types the whole config is written inBoolean, domain pattern, regular expression and time interval β defined once in Β§ 3.2 and then used by all 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.βHow the policy for a receiver is assembledSettings are assembled from the most general pattern to the most precise; the order of blocks in the file means nothing.