| 123456789101112131415161718192021222324252627282930313233343536373839 |
- import { iife } from "./tracing-utils.js";
- import { npmVersion } from "./version.js";
- let otel;
- let rawTracer;
- const tracer = {
- startActiveSpan(name, fn) {
- if (!otel) {
- return fn();
- }
- if (!rawTracer) {
- rawTracer = otel.trace.getTracer("drizzle-orm", npmVersion);
- }
- return iife(
- (otel2, rawTracer2) => rawTracer2.startActiveSpan(
- name,
- (span) => {
- try {
- return fn(span);
- } catch (e) {
- span.setStatus({
- code: otel2.SpanStatusCode.ERROR,
- message: e instanceof Error ? e.message : "Unknown error"
- // eslint-disable-line no-instanceof/no-instanceof
- });
- throw e;
- } finally {
- span.end();
- }
- }
- ),
- otel,
- rawTracer
- );
- }
- };
- export {
- tracer
- };
- //# sourceMappingURL=tracing.js.map
|