高级配置

本指南重点介绍了使用 Firebase 遥测插件为已部署的功能配置高级选项。如需详细了解每个配置选项,请参阅我们的 JS API 参考文档

本文档将介绍如何微调要收集哪些遥测数据、收集频率以及从哪些环境收集。

默认配置

Firebase 遥测插件提供了开箱即用的默认选项,可帮助您快速上手并顺利运行。以下是提供的默认值:

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

导出本地遥测数据

如需在本地运行时导出遥测数据,请将 forceDevExport 选项设置为 true

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

enableFirebaseTelemetry({forceDevExport: true});

在开发和测试期间,您可以通过调整导出间隔和超时时间来缩短延迟时间。

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

enableFirebaseTelemetry({
  forceDevExport: true,
  metricExportIntervalMillis: 10_000, // 10 seconds
  metricExportTimeoutMillis: 10_000 // 10 seconds
});

调整自动插桩

Firebase 遥测插件将使用 OpenTelemetry 零代码插桩自动收集热门框架的轨迹和指标。

如需查看可用插桩的完整列表,请参阅 auto-instrumentations-node 文档。

如需选择性地停用或启用符合自动插桩条件的插桩,请更新 autoInstrumentationConfig 字段:

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

enableFirebaseTelemetry({
  autoInstrumentationConfig: {
    '@opentelemetry/instrumentation-fs': { enabled: false },
    '@opentelemetry/instrumentation-dns': { enabled: false },
    '@opentelemetry/instrumentation-net': { enabled: false },
  }
});

停用遥测

Firebase Genkit Monitoring 会结合使用日志记录、跟踪和指标来全面了解 Genkit 互动情况,不过您也可以根据需要单独停用其中的每项元素。

停用输入和输出日志记录

默认情况下,Firebase 遥测插件会捕获每个 Genkit 功能或步骤的输入和输出。

为帮助您控制客户数据的存储方式,您可以通过向配置中添加以下内容来停用输入和输出的日志记录:

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

enableFirebaseTelemetry({
  disableLoggingInputAndOutput: true
});

设置此选项后,Firebase Genkit Monitoring 轨迹查看器中将隐去输入和输出属性,并且 Google Cloud 日志中也不会显示这些属性。

停用指标

如需停用指标收集,请将以下内容添加到配置中:

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

enableFirebaseTelemetry({
  disableMetrics: true
});

设置此选项后,您将无法再在 Firebase Genkit Monitoring 信息中心中看到稳定性指标,这些指标也将从 Google Cloud Metrics 中移除。

停用轨迹

如需停用轨迹收集,请将以下内容添加到配置中:

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

enableFirebaseTelemetry({
  disableTraces: true
});

设置此选项后,您将无法再在 Firebase Genkit Monitoring 功能页面中看到轨迹,也无法访问轨迹查看器,或在 Google Cloud Tracing 中看到轨迹。