feat(stats): count emails forwarded to the catch-all fallback
Adds an emails_forwarded counter (a subset of emails_rejected) bumped on a successful FALLBACK_FORWARD_ADDRESS forward. Dropped = rejected − forwarded. Surfaced in the /api/v1/stats response and the public status page. Co-Authored-By: Claude Opus 4.7 <[email protected]>
This commit is contained in:
1 parent
1583e95875
commit
81e46c9026
7 files changed
+64
No files matched your search
@@ -5,6 +5,7 @@ import {
|
||||
RawAttachment,
|
||||
IngestRejectionReason,
|
||||
} from "../application/email-processor";
|
||||
import { bumpCounters } from "../application/stats";
|
||||
import { normalizeCid } from "../infrastructure/html-processor";
|
||||
import { logger } from "./logger";
|
||||
|
||||
@@ -80,6 +81,9 @@ async function maybeForwardFallback(
|
||||
|
||||
try {
|
||||
await message.forward(fallback);
|
||||
// Counted as a subset of emails_rejected (already bumped in processEmail);
|
||||
// the dropped count is derived as emails_rejected − emails_forwarded.
|
||||
await bumpCounters(env.EMAIL_STORAGE, { emails_forwarded: 1 });
|
||||
} catch (error) {
|
||||
logger.warn("Fallback forward failed", {
|
||||
to: message.to,
|
||||
|
||||
Reference in new issue
Block a user