Collaudo VPS · sola lettura. La produzione è ancora su GCP. Sincronizzazioni, monitoraggi e modifiche sono disattivati su questa copia.
Setup operativo
Questa pagina non è documentazione generica: è la checklist per trasformare la dashboard da “vista locale” a control tower affidabile per costi, health e alert.
A cosa serve
Serve a capire quali integrazioni sono necessarie per rispondere velocemente a tre domande operative.
1. Sto spendendo troppo?
OpenAI, GCP/Firebase, subscription manuali e budget tenant devono essere collegati.
2. Quale progetto/tenant sta incidendo?
I mapping provider → tenant attribuiscono costi reali a mvp-lama, Federici, PTA_001 o futuri tenant.
3. Se qualcosa cade, lo so subito?
Endpoint monitorati, regole alert e SMTP/webhook devono essere attivi.
Checklist minima produzione
- Provider costi: OPENAI_ADMIN_KEY e GCP_BILLING_EXPORT_TABLE.
- Attribuzione: mapping OpenAI project_id o api_key_id; mapping GCP project_id.
- Tenant: budget mensile, valuta e status coerenti.
- Health: endpoint reali in Monitoring, con status atteso 200-399.
- Alert: regole per service_down e soglie costo, con SMTP Brevo o webhook.
- Persistenza: Cloud Run usa Firestore tramite DATASTORE_BACKEND=firestore.
Scenario: nuovo progetto GCP
Hai un nuovo progetto che condivide lo stesso billing account.
- Crea o seleziona un tenant.
- Vai in Mapping provider.
- Aggiungi provider gcp, tipo chiave project_id, chiave reale uguale al project id GCP.
- Lancia Sync costi: la dashboard attribuisce GCP/Firebase al tenant.
Scenario: nuova OpenAI key
Hai ruotato una key o creato un nuovo progetto OpenAI.
- Se usi mapping per project_id, non cambia nulla.
- Se usi mapping per api_key_id, aggiungi il nuovo id restituito dalla Costs API.
- Lancia Sync costi e verifica il tenant nel carousel budget.
Scenario: alert non arriva
La regola scatta ma non ricevi email.
- Vai in Alert e usa Test service_down.
- Controlla lo stato dell'ultimo evento: sent, Authentication failed o Unauthorized IP.
- Se usi Brevo, autorizza l'IP o disattiva IP blocking SMTP.
Variabili e dove vivono
Secret Manager
Valori sensibili: ADMIN_TOKEN, OPENAI_ADMIN_KEY, SMTP_PASSWORD.
Cloud Run env vars
Valori non segreti: tabella BigQuery, host SMTP, username SMTP, Firestore project, intervalli scheduler.
File utili nel repository: LOCAL_PROXY_ACCESS.md, README.md, .env.example, CLOUD_RUN_FIRESTORE_DEPLOY.md, GCP_SERVICE_ACCOUNT_GUIDE.md.