Telemetria in Cortex Framework

Cortex Framework raccoglie statistiche sull'utilizzo anonime durante i processi di deployment e sincronizzazione.

Scopo della raccolta dei dati

  • Valutazione dell'adozione delle funzionalità: il monitoraggio della frequenza dei deployment dei moduli del framework e dei prodotti di dati informa le priorità di sviluppo.
  • Identificazione dei pattern di integrazione: il monitoraggio delle varianti del sistema di origine connesso (ad es. SAP ECC, SAP S/4HANA) consente di verificare la compatibilità e di dare la priorità alla manutenzione di queste integrazioni.

La telemetria è abilitata per impostazione predefinita. Per disattivarla, consulta la sezione "Disattivare la telemetria".

Dati raccolti

Il framework raccoglie gli identificatori di configurazione, come gli ID set di dati, gli ID istanza del prodotto di dati e gli ID repository. Non vengono raccolti attributi di identità utente, come nomi, indirizzi email o indirizzi IP.

  • Numero di progetto Google Cloud: identifica il progetto che esegue il deployment, trasmesso nell'intestazione X-Goog-User-Project per aggregare l'utilizzo.
  • Regione o località di deployment: la regione in cui vengono eseguite le risorse di destinazione, utilizzata per monitorare la distribuzione geografica.
  • Versione del framework: la versione del codebase di Cortex Framework in uso (ad esempio, 7.0.0).
  • Nome componente: il componente di architettura di alto livello su cui viene eseguita l'azione (ad esempio, platform, data-product, o foundation).
  • Tipo di strumento: il comando o l'utilità CLI specifico eseguito (ad esempio, deployer o knowledge-catalog)
  • Variante di destinazione: il sistema di origine o la categoria di dominio dei moduli di cui è stato eseguito il deployment (ad es. sap o marketing).
  • Tipi di moduli abilitati: i nomi delle directory o i percorsi dei singoli moduli abilitati nella configurazione.
  • ID repository Dataform: il nome configurato dall'utente del repository Dataform di destinazione.
  • ID set di dati BigQuery: il nome del set di dati BigQuery di destinazione configurato dall'utente.
  • ID istanza del prodotto di dati: l'ID fornito dall'utente utilizzato durante il passaggio di registrazione di Knowledge Catalog per identificare i prodotti di dati registrati.
  • Stato di esecuzione: lo stato di successo o errore del passaggio di deployment (ad esempio, deployed, post-deploy-success, error, registered, o updated).

Struttura dell'intestazione User-Agent

I parametri di telemetria vengono inseriti nelle richieste API utilizzando un'intestazione User-Agent HTTP specializzata formattata dinamicamente utilizzando il seguente pattern: Google Cloud

gcp-cortex-eng/framework/<version>/<component>/<tool_type>/<variant>[/<optional_extension>]/<status>

Ad esempio, quando il deployment delle basi di SAP ERP viene eseguito correttamente:

gcp-cortex-eng/framework/7.0.0/platform/deployer/sap/cortex/sap/foundations/sap/deployed

Trasmissione dei dati

Cortex Framework utilizza un meccanismo di logging dei metadati passivo e senza payload. Anziché trasmettere payload di log espliciti a endpoint esterni, gli eventi di telemetria vengono registrati utilizzando le interazioni standard con i Google Cloud servizi.

Durante l'esecuzione dei comandi deploy, sync o demo, il framework comunica con le API standard Google Cloud , tra cui BigQuery e Dataform.

Nessun dato di telemetria viene inviato nel corpo di queste richieste API. I dati di telemetria vengono invece acquisiti in modo nativo dal logging del traffico API di Google Cloud, che analizza le intestazioni personalizzate User-Agent e numero di progetto per misurare i tassi di adozione e successo della soluzione.

Disattivare la telemetria

Cortex Framework rispetta le impostazioni della privacy e implementa una policy di disattivazione permanente. Puoi gestire la telemetria a livello globale utilizzando lo strumento cortex-config o passando un flag CLI durante l'esecuzione.

Disattivare a livello globale

Puoi gestire la telemetria aggiornando un file di preferenze utente persistente che si trova sulla tua macchina in ~/.cortex/cortex-framework-consent.properties. Se questo file contiene enable_telemetry=false, le chiamate API di telemetria vengono completamente ignorate in fase di runtime.

  • Disattivare in modo permanente (disattivare a livello globale):
uv run cortex-config telemetry disable
  • Attivare in modo permanente (attivare a livello globale):
uv run cortex-config telemetry enable
  • Controllare lo stato attuale:
uv run cortex-config telemetry status

Disattivare per una singola esecuzione

Puoi passare il flag --disable-telemetry ai comandi di esecuzione. Quando --disable-telemetry viene eseguito una volta, il framework crea automaticamente il file di configurazione persistente in ~/.cortex/cortex-framework-consent.properties contenente enable_telemetry=false.

## Cortex Framework-deploy
uv run cortex-deploy --config config/config.yaml --disable-telemetry

## Cortex Framework-build-and-deploy
uv run cortex-build-and-deploy --config config/config.yaml --disable-telemetry

## Cortex Framework-demo
uv run cortex-demo --config config/config.yaml --disable-telemetry

## Cortex Framework-kc-sync
uv run cortex-kc-sync --config config/config.yaml --disable-telemetry

Per ulteriori informazioni su questi comandi e sui relativi parametri, consulta i seguenti riferimenti CLI: