openvibers/openvibe.report .env.example

.env.example

main 3.1 KB · 67 lines · plaintext

1# OpenVibe.Report — environment (production: /etc/openvibe/report.env). Names only; never commit values.
2
3NODE_ENV=production
4PORT=5080
5HOST=127.0.0.1
6BASE_URL=https://openvibe.report
7TRUST_PROXY=2
8
9# Report's own PostgreSQL (ADR-035). The runtime role serves through PgBouncer on DATABASE_URL; migrations run
10# on DATABASE_DIRECT_URL as the owner. Without DATABASE_URL development uses an embedded PGlite database.
11DATABASE_URL=
12DATABASE_DIRECT_URL=
13#REPORT_PGLITE_DIR=./data/pglite
14
15# Which source the pages and GET /api/v1/stats answer from: network (today's behaviour) or report (after cutover).
16REPORT_SOURCE=network
17
18# OpenVibe.Network's open stats (GET /api/v1/stats?days=7|30|90). Both sources serve their read APIs on loopback.
19OV_NETWORK_INTERNAL_URL=http://127.0.0.1:4000
20# The public origin, used only for the OAuth token endpoint (Report's service token to Billing).
21OV_NETWORK_URL=https://openvibe.network
22
23# OpenVibe.Live's Rundown and after-show reports (GET /api/rundown/*, /api/recap/*).
24OV_LIVE_INTERNAL_URL=http://127.0.0.1:3000
25# OpenVibe.Media's one view store (GET /api/v1/views/aggregate): views, engaged viewers, Feed share, live peak.
26OV_MEDIA_INTERNAL_URL=http://127.0.0.1:4100
27
28# Bench's public read API; set to an internal origin if Report and Bench share one.
29OV_BENCH_INTERNAL_URL=https://bench.openvibe.services
30
31# OpenVibe.AI public Exchange catalogue and measured provider offers.
32OV_AI_INTERNAL_URL=https://api.openvibe.exchange
33
34# OpenVibe.Billing's read API. Report quotes Billing and never computes money. The service needs the grants
35# billing.stats.read (GET /api/v1/stats) and billing.balance.read (GET /api/v1/transactions?subject=…).
36OV_BILLING_INTERNAL_URL=http://127.0.0.1:4600
37# Report's Network OAuth client (client_credentials → audience openvibe.billing). The secret stays in the env file.
38OV_OAUTH_CLIENT_ID=report
39OV_OAUTH_CLIENT_SECRET=
40# An explicit Billing bearer token for an operator run (instead of the OAuth client); never commit it.
41#REPORT_BILLING_TOKEN=
42
43# OpenVibe.Events → Report (POST /internal/events): live.stream.ended and the frame beacon. Comma-separated for
44# rotation, 32+ characters each; unset makes the route answer 503.
45REPORT_EVENTS_SECRET=
46
47# AI Exchange analytics (plan G-P9), off by default. On: consume Billing's billing.credit.settled events into
48# aggregates by day/model/provider access, and open the staff-only /ai/exchange page and GET /api/v1/ai/exchange.
49# Off: a settlement delivery is ignored before anything is written.
50#REPORT_AI_EXCHANGE=0
51
52# The ingest and shadow jobs (on by default; REPORT_JOBS=0 turns both off).
53#REPORT_JOBS=1
54#REPORT_JOBS_ON_BOOT=1
55#REPORT_INGEST_INTERVAL_MS=300000
56#REPORT_SHADOW_WINDOW_DAYS=7
57#REPORT_SHADOW_INTERVAL_MS=900000
58
59# Optional: the per-address API limit (default 120 a minute), the personal routes' own limit (default 60) and the
60# readiness probe timeout (default 2500 ms).
61#REPORT_API_RATE_LIMIT_PER_MIN=120
62#REPORT_ME_RATE_LIMIT_PER_MIN=60
63#REPORT_READY_TIMEOUT_MS=2500
64
65# Optional: the deployed commit for /release.json. Without it the release is read from git in the checkout.
66#RELEASE_COMMIT=
67