Files
RSSHub/lib/utils/otel/trace.ts
dependabot[bot] c37c80f38d chore(deps): bump the opentelemetry group with 5 updates (#18637)
* chore(deps): bump the opentelemetry group with 5 updates

Bumps the opentelemetry group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [@opentelemetry/exporter-prometheus](https://github.com/open-telemetry/opentelemetry-js) | `0.57.2` | `0.200.0` |
| [@opentelemetry/exporter-trace-otlp-http](https://github.com/open-telemetry/opentelemetry-js) | `0.57.2` | `0.200.0` |
| [@opentelemetry/resources](https://github.com/open-telemetry/opentelemetry-js) | `1.30.1` | `2.0.0` |
| [@opentelemetry/sdk-metrics](https://github.com/open-telemetry/opentelemetry-js) | `1.30.1` | `2.0.0` |
| [@opentelemetry/sdk-trace-base](https://github.com/open-telemetry/opentelemetry-js) | `1.30.1` | `2.0.0` |


Updates `@opentelemetry/exporter-prometheus` from 0.57.2 to 0.200.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/experimental/v0.57.2...experimental/v0.200.0)

Updates `@opentelemetry/exporter-trace-otlp-http` from 0.57.2 to 0.200.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/experimental/v0.57.2...experimental/v0.200.0)

Updates `@opentelemetry/resources` from 1.30.1 to 2.0.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/v1.30.1...v2.0.0)

Updates `@opentelemetry/sdk-metrics` from 1.30.1 to 2.0.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/v1.30.1...v2.0.0)

Updates `@opentelemetry/sdk-trace-base` from 1.30.1 to 2.0.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/v1.30.1...v2.0.0)

---
updated-dependencies:
- dependency-name: "@opentelemetry/exporter-prometheus"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: opentelemetry
- dependency-name: "@opentelemetry/exporter-trace-otlp-http"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: opentelemetry
- dependency-name: "@opentelemetry/resources"
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: opentelemetry
- dependency-name: "@opentelemetry/sdk-metrics"
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: opentelemetry
- dependency-name: "@opentelemetry/sdk-trace-base"
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: opentelemetry
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix(otel): upgrade to otel v2

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tony <TonyRL@users.noreply.github.com>
2025-03-25 18:54:32 +08:00

29 lines
1.0 KiB
TypeScript

import { resourceFromAttributes } from '@opentelemetry/resources';
import { BasicTracerProvider, BatchSpanProcessor } from '@opentelemetry/sdk-trace-base';
import { ATTR_SERVICE_NAME } from '@opentelemetry/semantic-conventions';
import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';
import { trace } from '@opentelemetry/api';
const exporter = new OTLPTraceExporter({
// optional OTEL_EXPORTER_OTLP_ENDPOINT=https://localhost:4318
});
const provider = new BasicTracerProvider({
resource: resourceFromAttributes({
[ATTR_SERVICE_NAME]: 'rsshub',
}),
spanProcessors: [
new BatchSpanProcessor(exporter, {
// The maximum queue size. After the size is reached spans are dropped.
maxQueueSize: 4096,
// The interval between two consecutive exports
scheduledDelayMillis: 30000,
}),
],
});
trace.setGlobalTracerProvider(provider);
export const tracer = provider.getTracer('rsshub');
export const mainSpan = tracer.startSpan('main');