@loggerjs/otel 0.0.1 → 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.
- package/README.md +46 -5
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,23 +1,64 @@
|
|
|
1
1
|
# @loggerjs/otel
|
|
2
2
|
|
|
3
|
-
OpenTelemetry
|
|
3
|
+
> OpenTelemetry mapping, OTLP/HTTP delivery, and an active-span trace processor for LoggerJS.
|
|
4
|
+
|
|
5
|
+
[](https://www.npmjs.com/package/@loggerjs/otel)
|
|
6
|
+
[](../../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 {
|
|
22
|
+
import {
|
|
23
|
+
openTelemetryLogBridgeTransport,
|
|
24
|
+
openTelemetryTraceProcessor,
|
|
25
|
+
otlpHttpTransport,
|
|
26
|
+
} from "@loggerjs/otel";
|
|
8
27
|
|
|
9
28
|
const logger = createLogger({
|
|
10
|
-
|
|
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
|
-
|
|
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
|
|
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
|
|
57
|
+
"@loggerjs/core": "0.1.0"
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
60
60
|
"@opentelemetry/api": ">=1 <2"
|