Repo pro anonymizované sledování komponent (FE addons, marketplace items) a agregaci statistik. Pracuje s blackcat-observability, blackcat-analytics, blackcat-marketplace.
- Konfigurace –
config/example.usage.phppodporuje${env:}/${file:}a profily zblackcat-config, definuje úložiště, tajemství pro hashování tenantů a Prometheus výstup. - Runtime / CLI –
bin/usage <config>poskytujeingest,aggregate,export. Události se ukládají do NDJSON souboru, exporty generují snapshot pro payout. - Telemetry –
UsageMetricszapisuje počty událostí dovar/metrics.prom(usage_events_total,usage_component_*). - Testing –
tests/SmokeTest.phpověřuje ingest + agregaci se snapshotem. - Sběr telemetry events (GDPR friendly)
- Hashing/anonymization pipeline
- API pro revenue share engine
bin/usage ingestzavoláUsageService, který pomocíIngestornormalizuje payload (hash tenant, očistí metadata).- Událost se uloží do append-only NDJSON (
data/usage.ndjson) přesStorage\EventStore. UsageAggregatorpočítá souhrny pro komponenty (počty tenantů, eventů, průměr) – používá marketplace / payout vrstva.UsageExporterdokáže vyexportovat raw events (json,ndjson) nebo revenue snapshot (--format=revenue).
export BLACKCAT_USAGE_CONFIG=blackcat-usage/config/example.usage.php
# ingest jednoho eventu
php bin/usage $BLACKCAT_USAGE_CONFIG ingest '{"component_id":"identity-consent-card","tenant_id":"acme","count":5}'
# agregace pro payout engine
php bin/usage $BLACKCAT_USAGE_CONFIG aggregate
# export feedu pro blackcat-payout
php bin/usage $BLACKCAT_USAGE_CONFIG export revenue > snapshot.json