Skip to content

Advanced configuration

This guide focuses on advanced configuration options for deployed features using the Firebase telemetry plugin. Detailed descriptions of each configuration option can be found in our JS API reference documentation.

This documentation will describe how to fine-tune which telemetry is collected, how often, and from what environments.

The Firebase telemetry plugin provides default options, out of the box, to get you up and running quickly. These are the provided defaults:

{
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: new AlwaysOnSampler()
}

Nothing is exported while the process runs in a dev environment. To export telemetry when running locally, turn on the force dev export option.

import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
enableFirebaseTelemetry({ forceDevExport: true });

During development and testing, you can decrease latency by adjusting the export interval and timeout.

Note: Shipping to production with a frequent export interval may increase the cost for exported telemetry.

import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
enableFirebaseTelemetry({
forceDevExport: