← Code-Übersicht

rechnung-alert-check.php

Pfad: bin/rechnung-alert-check.php

Ext: php

Größe: 841 Bytes

Geändert: 2026-07-16 18:07:46+02

#!/usr/bin/env php
<?php

declare(strict_types=1);

use Demo\Operations\InvoiceLogAlertChecker;

require dirname(__DIR__) . '/vendor/autoload.php';

if ($argc !== 2 || $argv[1] === '') {
    fwrite(STDERR, "Aufruf: bin/rechnung-alert-check.php <audit.jsonl>\n");
    exit(1);
}

try {
    $result = (new InvoiceLogAlertChecker())->check($argv[1]);
    foreach ($result['alerts'] as $alert) {
        fwrite(STDOUT, sprintf(
            "ALARM runId=%s code=%s phase=%s\n",
            $alert['runId'],
            $alert['code'],
            $alert['phase'],
        ));
    }
    fwrite(STDOUT, sprintf("events=%d alerts=%d\n", $result['events'], count($result['alerts'])));
    exit($result['alerts'] === [] ? 0 : 2);
} catch (Throwable) {
    fwrite(STDERR, "ALARM runId=unknown code=UNKNOWN_AUDIT_FAILURE phase=audit\n");
    exit(1);
}