การกำหนดค่าขั้นสูง

คู่มือนี้จะเน้นที่ตัวเลือกการกําหนดค่าขั้นสูงสําหรับฟีเจอร์ที่ติดตั้งใช้งานโดยใช้ปลั๊กอินการวัดผล 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 },
  }
});

ปิดใช้การวัดและส่งข้อมูลทางไกล

การตรวจสอบ Genkit ของ Firebase ใช้ประโยชน์จากการบันทึก การติดตาม และเมตริกต่างๆ เพื่อจับภาพมุมมองแบบองค์รวมของการโต้ตอบ Genkit แต่คุณยังปิดใช้องค์ประกอบแต่ละรายการเหล่านี้แยกกันได้หากต้องการ

ปิดใช้การบันทึกอินพุตและเอาต์พุต

โดยค่าเริ่มต้น ปลั๊กอินการวัดผลของ Firebase จะบันทึกอินพุตและเอาต์พุตสำหรับฟีเจอร์หรือขั้นตอน Genkit แต่ละรายการ

คุณสามารถปิดใช้การบันทึกอินพุตและเอาต์พุตได้โดยเพิ่มข้อมูลต่อไปนี้ลงในการกำหนดค่าเพื่อช่วยควบคุมวิธีจัดเก็บข้อมูลลูกค้า

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

enableFirebaseTelemetry({
  disableLoggingInputAndOutput: true
});

เมื่อตั้งค่าตัวเลือกนี้ ระบบจะปกปิดแอตทริบิวต์อินพุตและเอาต์พุตในเครื่องมือดูร่องรอยการตรวจสอบ Genkit ของ Firebase และจะไม่แสดงในการบันทึกของ Google Cloud

ปิดใช้เมตริก

หากต้องการปิดใช้การเก็บรวบรวมเมตริก ให้เพิ่มข้อมูลต่อไปนี้ในการกําหนดค่า

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

enableFirebaseTelemetry({
  disableMetrics: true
});

เมื่อตั้งค่าตัวเลือกนี้ คุณจะไม่เห็นเมตริกความเสถียรในแดชบอร์ดการตรวจสอบ Firebase Genkit อีกต่อไป และเมตริกดังกล่าวจะหายไปจาก Google Cloud Metrics

ปิดใช้ร่องรอย

หากต้องการปิดใช้การเก็บรวบรวมร่องรอย ให้เพิ่มข้อมูลต่อไปนี้ในการกําหนดค่า

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

enableFirebaseTelemetry({
  disableTraces: true
});

เมื่อตั้งค่าตัวเลือกนี้ คุณจะไม่เห็นร่องรอยในหน้าฟีเจอร์การตรวจสอบของ Firebase Genkit, เข้าถึงเครื่องมือดูร่องรอย หรือเห็นร่องรอยที่แสดงอยู่ใน Google Cloud Tracing อีกต่อไป