@ogcio/o11y-sdk-node
Version:
Opentelemetry standard instrumentation SDK for NodeJS based project
26 lines (25 loc) • 1.12 kB
JavaScript
import { EnrichLogProcessor } from "../processor/enrich-logger-processor.js";
import { EnrichSpanProcessor } from "../processor/enrich-span-processor.js";
import { NextJsLogProcessor } from "../processor/nextjs-logger-processor.js";
import { NextJsSpanProcessor } from "../processor/nextjs-span-processor.js";
import { PseudoProfilingSpanProcessor } from "../processor/pseudo-profiling-span-processor.js";
export function _spansProcessorConfig(config) {
const _processor = [];
_processor.push(new NextJsSpanProcessor());
if (config.spanAttributes) {
_processor.push(new EnrichSpanProcessor(config.spanAttributes));
}
if (config.pseudoProfiling?.enabled) {
// Pseudo-profiling span processor should always be the last one in the chain
_processor.push(new PseudoProfilingSpanProcessor());
}
return _processor;
}
export function _logsProcessorConfig(config) {
const _processor = [];
_processor.push(new NextJsLogProcessor());
if (config.spanAttributes) {
_processor.push(new EnrichLogProcessor(config.spanAttributes));
}
return _processor;
}