monitor/api
fds2610-bot 79ccef099d Hooks-KPI im KPI-Monitor ergaenzen (Issue #38)
Die im Issue beschriebene Event-Anzeige (neuestes Event oben, aeltere
schieben nach, Ueberschuss wird abgeschnitten) ist bereits seit Phase 4
umgesetzt (buildEventLines()/MAX_EVENT_LINES, F5) und braucht keine
Aenderung.

Neu ist die vierte, immer sichtbare KPI-Kachel ganz rechts im
KPI-Monitor: "Hooks: n" zaehlt die seit dem letzten Start des
api-Containers empfangenen Webhooks. Der Zaehler ist dateibasiert
(Metrics\HookCounter), weil der eingebaute PHP-Server jede Anfrage als
eigene Skriptausfuehrung behandelt; docker/entrypoint.sh setzt die Datei
beim Start des api-Containers (nicht des sync-Containers) zurueck. Neuer
oeffentlicher Endpunkt GET /api/v1/webhooks/stats liefert den Stand,
das Frontend haengt ihn als eigene Kachel an (buildHooksKpi()) und
reserviert ihr dafuer eine feste Kachel statt sie der MAX_KPI_TILES-
Kappung der uebrigen KPIs zu unterwerfen. Der Wert fliesst zusaetzlich
in den SSE-Fingerabdruck (ChangeFeed) ein.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-04 13:18:05 +02:00
..
bin Codeberg-Projekte des Sync ueber ein Modal am PO konfigurierbar machen 2026-07-30 17:53:39 +02:00
docker Hooks-KPI im KPI-Monitor ergaenzen (Issue #38) 2026-08-04 13:18:05 +02:00
public Phase 1 der Neuausrichtung: REST-API fuer Tickets/Events/Systeme/KPIs/Agenten 2026-07-27 19:38:52 +02:00
src Hooks-KPI im KPI-Monitor ergaenzen (Issue #38) 2026-08-04 13:18:05 +02:00
tests/Unit Hooks-KPI im KPI-Monitor ergaenzen (Issue #38) 2026-08-04 13:18:05 +02:00
.dockerignore Phase 1 der Neuausrichtung: REST-API fuer Tickets/Events/Systeme/KPIs/Agenten 2026-07-27 19:38:52 +02:00
.phpunit.result.cache Klick auf den PO oeffnet den Projekte-Dialog zuverlaessig 2026-08-02 22:09:31 +02:00
composer.json Phase 1 der Neuausrichtung: REST-API fuer Tickets/Events/Systeme/KPIs/Agenten 2026-07-27 19:38:52 +02:00
composer.lock composer.lock einchecken 2026-07-27 20:17:18 +02:00
phpunit.xml Phase 1 der Neuausrichtung: REST-API fuer Tickets/Events/Systeme/KPIs/Agenten 2026-07-27 19:38:52 +02:00
README.md Codeberg-Sync als Dauerlaeufer statt manuellem Aufruf 2026-07-28 23:29:40 +02:00

monitor REST-API (Phase 1)

Vanilla-PHP-REST-API (kein Framework, siehe Visualization.md Abschnitt 5) fuer Tickets, Events, Systeme, KPIs und Agenten. Persistenz in SQLite (api/data/monitor.sqlite).

Vollstaendige Endpunkt-Dokumentation: ../API.md.

Entwicklung nur mit Docker (kein lokales PHP/Composer noetig)

Aus dem Repo-Wurzelverzeichnis:

cp .env.example .env   # einmalig, MONITOR_ADMIN_API_KEY anpassen

docker compose up --build       # startet die API auf http://localhost:8080
docker compose run --rm api composer test   # PHPUnit inkl. Coverage
docker compose run --rm api php bin/sync-codeberg.php   # Backlog/Done einmalig ziehen (Debug)

Im laufenden Betrieb wird der Codeberg-Sync nicht manuell angestossen, sondern vom Compose-Service sync alle MONITOR_SYNC_INTERVAL Sekunden ausgefuehrt (siehe ../API.md, Abschnitt "Codeberg-Sync").

Composer-Abhaengigkeiten (nur PHPUnit als Dev-Dependency) werden beim ersten Start automatisch im Container installiert (docker/entrypoint.sh) - auf dem Host ist weder PHP noch Composer noch SQLite erforderlich.