@loggerjs/otel 0.0.2 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +46 -5
  2. package/package.json +2 -2
package/README.md CHANGED
@@ -1,23 +1,64 @@
1
1
  # @loggerjs/otel
2
2
 
3
- OpenTelemetry helpers for LoggerJS.
3
+ > OpenTelemetry mapping, OTLP/HTTP delivery, and an active-span trace processor for LoggerJS.
4
+
5
+ [![npm](https://img.shields.io/npm/v/@loggerjs/otel.svg)](https://www.npmjs.com/package/@loggerjs/otel)
6
+ [![license](https://img.shields.io/npm/l/@loggerjs/otel)](../../LICENSE)
7
+
8
+ OpenTelemetry integration for [LoggerJS](../../README.md). Ship logs to any OTLP endpoint over `fetch`, or bridge them into an existing OpenTelemetry `LoggerProvider`, and stamp every log with the active span's trace context.
9
+
10
+ ## Install
11
+
12
+ ```bash
13
+ npm install @loggerjs/otel
14
+ ```
15
+
16
+ `@opentelemetry/api` (`>=1 <2`) is a **peer dependency** — pass the API object your app already uses.
17
+
18
+ ## Usage
4
19
 
5
20
  ```ts
6
21
  import { createLogger } from "@loggerjs/core";
7
- import { openTelemetryLogBridgeTransport, openTelemetryTraceProcessor, otlpHttpTransport } from "@loggerjs/otel";
22
+ import {
23
+ openTelemetryLogBridgeTransport,
24
+ openTelemetryTraceProcessor,
25
+ otlpHttpTransport,
26
+ } from "@loggerjs/otel";
8
27
 
9
28
  const logger = createLogger({
10
- name: "api",
11
- processors: [openTelemetryTraceProcessor({ api: otelApi })],
29
+ category: ["api"],
30
+ processors: [openTelemetryTraceProcessor({ api: otelApi })], // attach active-span trace_id/span_id
12
31
  transports: [
13
32
  otlpHttpTransport({
14
33
  url: "http://localhost:4318/v1/logs",
15
34
  resource: { "service.name": "checkout-api" },
16
35
  maxRecords: 100,
17
36
  }),
37
+ // ...or bridge into an existing OpenTelemetry pipeline:
18
38
  openTelemetryLogBridgeTransport({ loggerProvider: logsProvider }),
19
39
  ],
20
40
  });
21
41
  ```
22
42
 
23
- Subpaths expose `transport-http`, `codec-otlp-json`, `trace`, and `log-bridge`.
43
+ ## What's included
44
+
45
+ | Export | Purpose |
46
+ | --- | --- |
47
+ | `otlpHttpTransport` | OTLP/HTTP JSON log delivery over `fetch`, wrapped in `batchTransport` (batching + retry); set `resource`, `scopeName`, `scopeVersion`, `maxRecords`. |
48
+ | `openTelemetryLogBridgeTransport` | Emits into an existing OpenTelemetry `LoggerProvider` instead of speaking the wire protocol directly. |
49
+ | `openTelemetryTraceProcessor` | Reads the active span via `@opentelemetry/api` and stamps `trace_id` / `span_id` onto each event. |
50
+ | `otlpJsonCodec` | The OTLP JSON mapping as a standalone codec. |
51
+ | `toOtlpJson`, `toOtlpLogRecord`, `otelSeverityText`, `toOpenTelemetryLogBridgeRecord` | Low-level mapping helpers for custom pipelines. |
52
+
53
+ ## Subpath exports
54
+
55
+ `@loggerjs/otel/transport-http` · `@loggerjs/otel/log-bridge` · `@loggerjs/otel/codec-otlp-json` · `@loggerjs/otel/trace`
56
+
57
+ ## Documentation
58
+
59
+ - [Transports](../../docs/TRANSPORTS.md) — batch reliability options and vendor transport guidance
60
+ - [Concepts](../../docs/CONCEPTS.md) · [LoggerJS root README](../../README.md)
61
+
62
+ ## License
63
+
64
+ [MIT](../../LICENSE) © JS Kits
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loggerjs/otel",
3
- "version": "0.0.2",
3
+ "version": "0.1.0",
4
4
  "description": "OpenTelemetry mapping and OTLP JSON transport for loggerjs.",
5
5
  "homepage": "https://github.com/jskits/loggerjs/tree/main/packages/otel#readme",
6
6
  "bugs": {
@@ -54,7 +54,7 @@
54
54
  "provenance": true
55
55
  },
56
56
  "dependencies": {
57
- "@loggerjs/core": "0.0.2"
57
+ "@loggerjs/core": "0.1.0"
58
58
  },
59
59
  "peerDependencies": {
60
60
  "@opentelemetry/api": ">=1 <2"