@moreapp/common-nodejs 0.13.5 → 0.14.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/dist/observability/tracer.js +17 -0
- package/package.json +20 -20
|
@@ -34,6 +34,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.shutdown = exports.start = void 0;
|
|
37
|
+
const node_module_1 = require("node:module");
|
|
38
|
+
const node_url_1 = require("node:url");
|
|
39
|
+
const node_worker_threads_1 = require("node:worker_threads");
|
|
37
40
|
const api_1 = require("@opentelemetry/api");
|
|
38
41
|
const sdk_trace_node_1 = require("@opentelemetry/sdk-trace-node");
|
|
39
42
|
const instrumentation_1 = require("@opentelemetry/instrumentation");
|
|
@@ -49,12 +52,26 @@ const environmentVariable_1 = require("../utils/environmentVariable");
|
|
|
49
52
|
const exporter_trace_otlp_grpc_1 = require("@opentelemetry/exporter-trace-otlp-grpc");
|
|
50
53
|
const lodash_1 = require("lodash");
|
|
51
54
|
let provider;
|
|
55
|
+
let esmHookRegistered = false;
|
|
56
|
+
/**
|
|
57
|
+
* OpenTelemetry instrumentations patch libraries through `require()`, which doesn't cover libraries loaded with
|
|
58
|
+
* `import` (e.g. `import express from "express"` in an ESM project). This loader hook makes sure those get patched too.
|
|
59
|
+
*/
|
|
60
|
+
const registerEsmHook = () => {
|
|
61
|
+
// With `--require`, Node also runs the preload in its loader hooks thread, where registering again is not needed
|
|
62
|
+
if (esmHookRegistered || !node_worker_threads_1.isMainThread) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
(0, node_module_1.register)("@opentelemetry/instrumentation/hook.mjs", (0, node_url_1.pathToFileURL)(__filename));
|
|
66
|
+
esmHookRegistered = true;
|
|
67
|
+
};
|
|
52
68
|
const start = (serviceName, { http = {
|
|
53
69
|
portsToInstrument: [3000],
|
|
54
70
|
}, extraInstrumentations = [], debug = false, }) => {
|
|
55
71
|
if (debug) {
|
|
56
72
|
api_1.diag.setLogger(new api_1.DiagConsoleLogger(), api_1.DiagLogLevel.DEBUG);
|
|
57
73
|
}
|
|
74
|
+
registerEsmHook();
|
|
58
75
|
provider = new sdk_trace_node_1.NodeTracerProvider({
|
|
59
76
|
resource: (0, resources_1.resourceFromAttributes)({
|
|
60
77
|
[semantic_conventions_1.ATTR_SERVICE_NAME]: serviceName,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@moreapp/common-nodejs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.0",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -30,45 +30,45 @@
|
|
|
30
30
|
],
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@opentelemetry/api": "1.9.1",
|
|
33
|
-
"@opentelemetry/core": "2.
|
|
34
|
-
"@opentelemetry/exporter-trace-otlp-grpc": "0.
|
|
35
|
-
"@opentelemetry/instrumentation": "0.
|
|
36
|
-
"@opentelemetry/instrumentation-dns": "0.
|
|
37
|
-
"@opentelemetry/instrumentation-express": "0.
|
|
38
|
-
"@opentelemetry/instrumentation-http": "0.
|
|
39
|
-
"@opentelemetry/instrumentation-winston": "0.
|
|
40
|
-
"@opentelemetry/resources": "2.
|
|
41
|
-
"@opentelemetry/sdk-node": "0.
|
|
42
|
-
"@opentelemetry/sdk-trace-base": "2.
|
|
43
|
-
"@opentelemetry/sdk-trace-node": "2.
|
|
33
|
+
"@opentelemetry/core": "2.11.0",
|
|
34
|
+
"@opentelemetry/exporter-trace-otlp-grpc": "0.222.0",
|
|
35
|
+
"@opentelemetry/instrumentation": "0.222.0",
|
|
36
|
+
"@opentelemetry/instrumentation-dns": "0.65.0",
|
|
37
|
+
"@opentelemetry/instrumentation-express": "0.70.0",
|
|
38
|
+
"@opentelemetry/instrumentation-http": "0.222.0",
|
|
39
|
+
"@opentelemetry/instrumentation-winston": "0.66.0",
|
|
40
|
+
"@opentelemetry/resources": "2.11.0",
|
|
41
|
+
"@opentelemetry/sdk-node": "0.222.0",
|
|
42
|
+
"@opentelemetry/sdk-trace-base": "2.11.0",
|
|
43
|
+
"@opentelemetry/sdk-trace-node": "2.11.0",
|
|
44
44
|
"@opentelemetry/semantic-conventions": "1.43.0",
|
|
45
|
-
"axios": "1.
|
|
45
|
+
"axios": "1.20.0",
|
|
46
46
|
"content-disposition-parser": "1.0.2",
|
|
47
|
-
"date-and-time": "4.5.
|
|
47
|
+
"date-and-time": "4.5.2",
|
|
48
48
|
"express": "5.2.1",
|
|
49
49
|
"lodash": "4.18.1",
|
|
50
50
|
"prom-client": "15.1.3",
|
|
51
51
|
"winston": "3.19.0",
|
|
52
|
-
"zod": "4.
|
|
52
|
+
"zod": "4.6.5"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
55
|
"@types/express": "5.0.6",
|
|
56
56
|
"@types/lodash": "4.17.25",
|
|
57
|
-
"@types/node": "24.13.
|
|
58
|
-
"@typescript-eslint/eslint-plugin": "8.
|
|
59
|
-
"@typescript-eslint/parser": "8.
|
|
57
|
+
"@types/node": "24.13.4",
|
|
58
|
+
"@typescript-eslint/eslint-plugin": "8.70.0",
|
|
59
|
+
"@typescript-eslint/parser": "8.70.0",
|
|
60
60
|
"@vitest/coverage-v8": "4.1.11",
|
|
61
61
|
"@vitest/ui": "4.1.11",
|
|
62
62
|
"eslint": "9.39.5",
|
|
63
63
|
"eslint-config-prettier": "10.1.8",
|
|
64
64
|
"eslint-plugin-prettier": "5.5.6",
|
|
65
65
|
"husky": "9.1.7",
|
|
66
|
-
"lint-staged": "17.
|
|
66
|
+
"lint-staged": "17.5.1",
|
|
67
67
|
"nock": "14.0.17",
|
|
68
68
|
"prettier": "3.9.6",
|
|
69
69
|
"ts-node": "10.9.2",
|
|
70
70
|
"typescript": "6.0.3",
|
|
71
|
-
"typescript-eslint": "8.
|
|
71
|
+
"typescript-eslint": "8.70.0",
|
|
72
72
|
"vitest": "4.1.11",
|
|
73
73
|
"vitest-mock-extended": "5.1.1"
|
|
74
74
|
},
|