Filter which spans are exported to LangWatch using presets or explicit criteria.
You don’t need every span. Filter out the noise and ship the useful bits. LangWatch lets you keep AI and business spans while dropping framework chatter.
import { setupObservability } from "langwatch/observability/node";import { LangWatchTraceExporter } from "langwatch";setupObservability({ // We are specifying a custom trace exporter, so we need to disable default // integration to prevent double exporting langwatch: "disabled", traceExporter: new LangWatchTraceExporter(),});
Default is equivalent to { filters: [{ preset: "excludeHttpRequests" }] }. You can set filters: null or filters: [] to send all spans.
import { setupObservability } from "langwatch/observability/node";import { LangWatchTraceExporter } from "langwatch";setupObservability({ // We are specifying a custom trace exporter, so we need to disable default // integration to prevent double exporting langwatch: "disabled", traceExporter: new LangWatchTraceExporter({ filters: [{ preset: "excludeHttpRequests" }] })});
Via BatchSpanProcessor
Copy
import { setupObservability } from "langwatch/observability/node";import { BatchSpanProcessor } from "@opentelemetry/sdk-trace-base";import { LangWatchTraceExporter } from "langwatch";setupObservability({ // We are specifying a custom trace exporter, so we need to disable default // integration to prevent double exporting langwatch: "disabled", spanProcessors: [ new BatchSpanProcessor( new LangWatchTraceExporter({ filters: [{ preset: "vercelAIOnly" }] }) ), ],});