autotel-effect 4.0.0 → 4.0.1
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/NOTICE +9 -0
- package/README.md +9 -0
- package/dist/index.cjs +5 -13
- package/dist/index.js +6 -14
- package/package.json +5 -3
package/NOTICE
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
autotel
|
|
2
|
+
Copyright 2026 Jag Reehal
|
|
3
|
+
|
|
4
|
+
This product is licensed under the Apache License, Version 2.0.
|
|
5
|
+
See the LICENSE file for the full license text.
|
|
6
|
+
|
|
7
|
+
"autotel" is a trademark of Jag Reehal. The Apache License, Version 2.0
|
|
8
|
+
does not grant rights to use the "autotel" name. See TRADEMARKS.md for
|
|
9
|
+
the trademark policy.
|
package/README.md
CHANGED
|
@@ -94,6 +94,15 @@ Effect.log('charged').pipe(Effect.annotateLogs({ 'order.id': 'o-1' }));
|
|
|
94
94
|
// {"level":"info","msg":"charged","order.id":"o-1","traceId":"...","spanId":"..."}
|
|
95
95
|
```
|
|
96
96
|
|
|
97
|
+
Rich annotation values are flattened to the attribute shape the rest of autotel
|
|
98
|
+
produces: a nested object becomes dot-notation keys, a `Date` becomes an ISO
|
|
99
|
+
string, an `Error` becomes its message.
|
|
100
|
+
|
|
101
|
+
```typescript
|
|
102
|
+
Effect.annotateLogs({ order: { id: 7 }, at: new Date(0) });
|
|
103
|
+
// attributes: { 'order.id': 7, at: '1970-01-01T00:00:00.000Z' }
|
|
104
|
+
```
|
|
105
|
+
|
|
97
106
|
Errors keep their stack: a `Cause` passed to `Effect.logError` (or an `Error`
|
|
98
107
|
in the message parts) is logged as `err` rather than stringified into `msg`.
|
|
99
108
|
|
package/dist/index.cjs
CHANGED
|
@@ -21,11 +21,13 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
21
21
|
enumerable: true
|
|
22
22
|
}) : target, mod));
|
|
23
23
|
//#endregion
|
|
24
|
+
let _effect_opentelemetry_OtelLogger = require("@effect/opentelemetry/OtelLogger");
|
|
24
25
|
let _effect_opentelemetry_OtelTracer = require("@effect/opentelemetry/OtelTracer");
|
|
25
26
|
_effect_opentelemetry_OtelTracer = __toESM(_effect_opentelemetry_OtelTracer, 1);
|
|
26
27
|
let _effect_opentelemetry_Resource = require("@effect/opentelemetry/Resource");
|
|
27
28
|
_effect_opentelemetry_Resource = __toESM(_effect_opentelemetry_Resource, 1);
|
|
28
29
|
let _opentelemetry_api_logs = require("@opentelemetry/api-logs");
|
|
30
|
+
let autotel = require("autotel");
|
|
29
31
|
let autotel_logger = require("autotel/logger");
|
|
30
32
|
let effect_Cause = require("effect/Cause");
|
|
31
33
|
effect_Cause = __toESM(effect_Cause, 1);
|
|
@@ -82,12 +84,12 @@ function loggerLayer(options) {
|
|
|
82
84
|
if (options.console ?? true) log[method](metadata, body);
|
|
83
85
|
otelLogger().emit({
|
|
84
86
|
body,
|
|
85
|
-
severityNumber:
|
|
87
|
+
severityNumber: (0, _effect_opentelemetry_OtelLogger.logLevelToSeverityNumber)(logLevel),
|
|
86
88
|
severityText: logLevel,
|
|
87
|
-
attributes: {
|
|
89
|
+
attributes: (0, autotel.flattenToAttributes)({
|
|
88
90
|
...metadata,
|
|
89
91
|
...Array.isArray(metadata.err) ? { err: metadata.err.join("\n") } : {}
|
|
90
|
-
}
|
|
92
|
+
})
|
|
91
93
|
});
|
|
92
94
|
})], { mergeWithExisting: options.mergeWithExisting ?? false });
|
|
93
95
|
}
|
|
@@ -99,16 +101,6 @@ const LEVEL_TO_METHOD = {
|
|
|
99
101
|
Error: "error",
|
|
100
102
|
Fatal: "error"
|
|
101
103
|
};
|
|
102
|
-
const LEVEL_TO_SEVERITY = {
|
|
103
|
-
All: _opentelemetry_api_logs.SeverityNumber.UNSPECIFIED,
|
|
104
|
-
Trace: _opentelemetry_api_logs.SeverityNumber.TRACE,
|
|
105
|
-
Debug: _opentelemetry_api_logs.SeverityNumber.DEBUG,
|
|
106
|
-
Info: _opentelemetry_api_logs.SeverityNumber.INFO,
|
|
107
|
-
Warn: _opentelemetry_api_logs.SeverityNumber.WARN,
|
|
108
|
-
Error: _opentelemetry_api_logs.SeverityNumber.ERROR,
|
|
109
|
-
Fatal: _opentelemetry_api_logs.SeverityNumber.FATAL,
|
|
110
|
-
None: _opentelemetry_api_logs.SeverityNumber.UNSPECIFIED
|
|
111
|
-
};
|
|
112
104
|
function formatPart(part) {
|
|
113
105
|
if (typeof part === "string") return part;
|
|
114
106
|
if (part instanceof Error) return String(part);
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { logLevelToSeverityNumber } from "@effect/opentelemetry/OtelLogger";
|
|
1
2
|
import * as OtelTracer from "@effect/opentelemetry/OtelTracer";
|
|
2
3
|
import * as Resource from "@effect/opentelemetry/Resource";
|
|
3
|
-
import {
|
|
4
|
+
import { logs } from "@opentelemetry/api-logs";
|
|
5
|
+
import { flattenToAttributes } from "autotel";
|
|
4
6
|
import { createBuiltinLogger } from "autotel/logger";
|
|
5
7
|
import * as Cause from "effect/Cause";
|
|
6
8
|
import * as Layer from "effect/Layer";
|
|
@@ -53,12 +55,12 @@ function loggerLayer(options) {
|
|
|
53
55
|
if (options.console ?? true) log[method](metadata, body);
|
|
54
56
|
otelLogger().emit({
|
|
55
57
|
body,
|
|
56
|
-
severityNumber:
|
|
58
|
+
severityNumber: logLevelToSeverityNumber(logLevel),
|
|
57
59
|
severityText: logLevel,
|
|
58
|
-
attributes: {
|
|
60
|
+
attributes: flattenToAttributes({
|
|
59
61
|
...metadata,
|
|
60
62
|
...Array.isArray(metadata.err) ? { err: metadata.err.join("\n") } : {}
|
|
61
|
-
}
|
|
63
|
+
})
|
|
62
64
|
});
|
|
63
65
|
})], { mergeWithExisting: options.mergeWithExisting ?? false });
|
|
64
66
|
}
|
|
@@ -70,16 +72,6 @@ const LEVEL_TO_METHOD = {
|
|
|
70
72
|
Error: "error",
|
|
71
73
|
Fatal: "error"
|
|
72
74
|
};
|
|
73
|
-
const LEVEL_TO_SEVERITY = {
|
|
74
|
-
All: SeverityNumber.UNSPECIFIED,
|
|
75
|
-
Trace: SeverityNumber.TRACE,
|
|
76
|
-
Debug: SeverityNumber.DEBUG,
|
|
77
|
-
Info: SeverityNumber.INFO,
|
|
78
|
-
Warn: SeverityNumber.WARN,
|
|
79
|
-
Error: SeverityNumber.ERROR,
|
|
80
|
-
Fatal: SeverityNumber.FATAL,
|
|
81
|
-
None: SeverityNumber.UNSPECIFIED
|
|
82
|
-
};
|
|
83
75
|
function formatPart(part) {
|
|
84
76
|
if (typeof part === "string") return part;
|
|
85
77
|
if (part instanceof Error) return String(part);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "autotel-effect",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.1",
|
|
4
4
|
"description": "Bridge autotel and Effect v4: Effect.withSpan spans export through autotel's global TracerProvider",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -15,7 +15,9 @@
|
|
|
15
15
|
},
|
|
16
16
|
"files": [
|
|
17
17
|
"dist",
|
|
18
|
-
"README.md"
|
|
18
|
+
"README.md",
|
|
19
|
+
"LICENSE",
|
|
20
|
+
"NOTICE"
|
|
19
21
|
],
|
|
20
22
|
"keywords": [
|
|
21
23
|
"autotel",
|
|
@@ -53,7 +55,7 @@
|
|
|
53
55
|
"@opentelemetry/api-logs": "^0.222.0",
|
|
54
56
|
"@opentelemetry/sdk-logs": "^0.222.0",
|
|
55
57
|
"@types/node": "^26.1.2",
|
|
56
|
-
"autotel": "7.6.
|
|
58
|
+
"autotel": "7.6.2",
|
|
57
59
|
"effect": "4.0.0-rc.112",
|
|
58
60
|
"rimraf": "^6.1.3",
|
|
59
61
|
"tsdown": "^0.22.14",
|