Questa guida è incentrata sulle opzioni di configurazione avanzate per le funzionalità di cui è stato eseguito il deployment utilizzando il plug-in di telemetria Firebase. Puoi trovare descrizioni dettagliate di ogni opzione di configurazione nella nostra documentazione di riferimento dell'API JS.
Questa documentazione descrive come ottimizzare la telemetria raccolta, la frequenza con cui viene raccolta e da quali ambienti.
Configurazione predefinita
Il plug-in di telemetria di Firebase fornisce opzioni predefinite, pronte all'uso, per consentirti di iniziare a utilizzare rapidamente la funzionalità. Di seguito sono riportati i valori predefiniti forniti:
{
autoInstrumentation: true,
autoInstrumentationConfig: {
'@opentelemetry/instrumentation-dns': { enabled: false },
}
disableMetrics: false,
disableTraces: false,
disableLoggingInputAndOutput: false,
forceDevExport: false,
// 5 minutes
metricExportIntervalMillis: 300_000,
// 5 minutes
metricExportTimeoutMillis: 300_000,
// See https://js.api.genkit.dev/interfaces/_genkit-ai_google-cloud.GcpTelemetryConfigOptions.html#sampler
sampler: AlwaysOnSampler()
}
Esportare la telemetria locale
Per esportare la telemetria quando l'app viene eseguita localmente, imposta l'opzione forceDevExport
su
true
.
import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
enableFirebaseTelemetry({forceDevExport: true});
Durante lo sviluppo e i test, puoi ridurre la latenza modificando l'intervallo di esportazione e il timeout.
import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
enableFirebaseTelemetry({
forceDevExport: true,
metricExportIntervalMillis: 10_000, // 10 seconds
metricExportTimeoutMillis: 10_000 // 10 seconds
});
Modificare la misurazione automatica
Il plug-in di telemetria di Firebase raccoglie automaticamente tracce e metriche per i framework più diffusi utilizzando la strumentazione senza codice di OpenTelemetry.
Un elenco completo delle misurazioni disponibili è disponibile nella documentazione di auto-instrumentations-node.
Per disattivare o attivare in modo selettivo le misurazioni idonee per la misurazione automatica, aggiorna il campo autoInstrumentationConfig
:
import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
enableFirebaseTelemetry({
autoInstrumentationConfig: {
'@opentelemetry/instrumentation-fs': { enabled: false },
'@opentelemetry/instrumentation-dns': { enabled: false },
'@opentelemetry/instrumentation-net': { enabled: false },
}
});
Disattivare la telemetria
Il monitoraggio di Firebase Genkit sfrutta una combinazione di logging, monitoraggio e metriche per acquisire una visione olistica delle interazioni con Genkit. Tuttavia, se necessario, puoi anche disattivare ciascuno di questi elementi in modo indipendente.
Disattivare il logging di input e output
Per impostazione predefinita, il plug-in di telemetria Firebase acquisisce input e output per ogni funzionalità o passaggio di Genkit.
Per aiutarti a controllare la modalità di archiviazione dei dati dei clienti, puoi disattivare il logging di input e output aggiungendo quanto segue alla configurazione:
import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
enableFirebaseTelemetry({
disableLoggingInputAndOutput: true
});
Se questa opzione è impostata, gli attributi di input e output verranno oscurati nel visualizzatore delle tracce di monitoraggio di Firebase Genkit e non saranno presenti nel logging di Google Cloud.
Disattivare le metriche
Per disattivare la raccolta delle metriche, aggiungi quanto segue alla configurazione:
import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
enableFirebaseTelemetry({
disableMetrics: true
});
Con questa opzione impostata, non visualizzerai più le metriche sulla stabilità nella dashboard di monitoraggio di Firebase Genkit e non saranno presenti in Google Cloud Metrics.
Disattivare le tracce
Per disattivare la raccolta delle tracce, aggiungi quanto segue alla configurazione:
import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
enableFirebaseTelemetry({
disableTraces: true
});
Con questa opzione impostata, non visualizzerai più le tracce nella pagina della funzionalità di monitoraggio di Firebase Genkit, non avrai accesso al visualizzatore delle tracce o non visualizzerai le tracce presenti in Google Cloud Tracing.