@platformatic/telemetry 2.9.0 → 2.9.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/lib/node-http-telemetry.js +10 -10
- package/package.json +3 -2
|
@@ -5,17 +5,17 @@ const { HttpInstrumentation } = require('@opentelemetry/instrumentation-http')
|
|
|
5
5
|
const { Resource } = require('@opentelemetry/resources')
|
|
6
6
|
const setupTelemetry = require('./telemetry-config')
|
|
7
7
|
const { ATTR_SERVICE_NAME } = require('@opentelemetry/semantic-conventions')
|
|
8
|
-
const { pino } = require('pino')
|
|
9
8
|
const { workerData } = require('node:worker_threads')
|
|
10
9
|
const { resolve } = require('node:path')
|
|
11
10
|
const { tmpdir } = require('node:os')
|
|
11
|
+
const logger = require('abstract-logging')
|
|
12
12
|
const { statSync, readFileSync } = require('node:fs') // We want to have all this synch
|
|
13
|
-
|
|
14
|
-
const
|
|
13
|
+
const util = require('node:util')
|
|
14
|
+
const debuglog = util.debuglog('@platformatic/telemetry')
|
|
15
15
|
|
|
16
16
|
const setupNodeHTTPTelemetry = (opts) => {
|
|
17
17
|
const { serviceName } = opts
|
|
18
|
-
|
|
18
|
+
debuglog(`Setting up Node.js Open Telemetry instrumentation for service: ${serviceName}`)
|
|
19
19
|
const { spanProcessors } = setupTelemetry(opts, logger)
|
|
20
20
|
const sdk = new opentelemetry.NodeSDK({
|
|
21
21
|
spanProcessors, // https://github.com/open-telemetry/opentelemetry-js/issues/4881#issuecomment-2358059714
|
|
@@ -30,8 +30,8 @@ const setupNodeHTTPTelemetry = (opts) => {
|
|
|
30
30
|
|
|
31
31
|
process.on('SIGTERM', () => {
|
|
32
32
|
sdk.shutdown()
|
|
33
|
-
.then(() =>
|
|
34
|
-
.catch((error) =>
|
|
33
|
+
.then(() => debuglog('Tracing terminated'))
|
|
34
|
+
.catch((error) => debuglog('Error terminating tracing', error))
|
|
35
35
|
})
|
|
36
36
|
}
|
|
37
37
|
|
|
@@ -46,17 +46,17 @@ if (useWorkerData) {
|
|
|
46
46
|
statSync(dataPath)
|
|
47
47
|
const jsonData = JSON.parse(readFileSync(dataPath, 'utf8'))
|
|
48
48
|
data = jsonData.data
|
|
49
|
-
|
|
49
|
+
debuglog(`Loaded data from ${dataPath}`)
|
|
50
50
|
} catch (e) {
|
|
51
|
-
|
|
51
|
+
debuglog('Error reading data from file %o', e)
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
if (data) {
|
|
56
|
-
|
|
56
|
+
debuglog('Setting up telemetry %o', data)
|
|
57
57
|
const telemetryConfig = useWorkerData ? data?.serviceConfig?.telemetry : data?.telemetryConfig
|
|
58
58
|
if (telemetryConfig) {
|
|
59
|
-
|
|
59
|
+
debuglog('telemetryConfig %o', telemetryConfig)
|
|
60
60
|
setupNodeHTTPTelemetry(telemetryConfig)
|
|
61
61
|
}
|
|
62
62
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@platformatic/telemetry",
|
|
3
|
-
"version": "2.9.
|
|
3
|
+
"version": "2.9.1",
|
|
4
4
|
"description": "OpenTelemetry integration for Platformatic",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"author": "Platformatic Inc. <oss@platformatic.dev> (https://platformatic.dev)",
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
"license": "Apache-2.0",
|
|
12
12
|
"devDependencies": {
|
|
13
13
|
"borp": "^0.18.0",
|
|
14
|
-
"fastify": "^5.0.0",
|
|
15
14
|
"express": "^4.19.2",
|
|
15
|
+
"fastify": "^5.0.0",
|
|
16
16
|
"neostandard": "^0.11.1",
|
|
17
17
|
"typescript": "^5.5.4"
|
|
18
18
|
},
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
"@opentelemetry/sdk-node": "^0.54.0",
|
|
28
28
|
"@opentelemetry/sdk-trace-base": "^1.22.0",
|
|
29
29
|
"@opentelemetry/semantic-conventions": "^1.22.0",
|
|
30
|
+
"abstract-logging": "^2.0.1",
|
|
30
31
|
"fast-uri": "^2.3.0",
|
|
31
32
|
"fastify-plugin": "^5.0.0"
|
|
32
33
|
},
|