Skip to content

Commit 9fb7fc6

Browse files
mehulsonowalsimon-id
authored andcommitted
add missing telemetry host data (#2682)
* add os, kernel, architecture fields * test host obj * Update packages/dd-trace/src/telemetry/index.js Co-authored-by: simon-id <[email protected]> * Update packages/dd-trace/src/telemetry/index.js Co-authored-by: simon-id <[email protected]> * Update packages/dd-trace/src/telemetry/index.js Co-authored-by: simon-id <[email protected]> * Update packages/dd-trace/src/telemetry/index.js Co-authored-by: simon-id <[email protected]> * fix lint issues * Update packages/dd-trace/test/telemetry/index.spec.js Co-authored-by: simon-id <[email protected]> * Update packages/dd-trace/src/telemetry/index.js Co-authored-by: simon-id <[email protected]> --------- Co-authored-by: simon-id <[email protected]>
1 parent 7243277 commit 9fb7fc6

File tree

2 files changed

+47
-16
lines changed

2 files changed

+47
-16
lines changed

packages/dd-trace/src/telemetry/index.js

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
'use strict'
22

33
const tracerVersion = require('../../../../package.json').version
4-
const containerId = require('../exporters/common/docker').id()
54
const os = require('os')
65
const dependencies = require('./dependencies')
76
const { sendData } = require('./send-data')
@@ -76,9 +75,31 @@ function createAppObject () {
7675
}
7776

7877
function createHostObject () {
78+
const osName = os.type()
79+
80+
if (osName === 'Linux' || osName === 'Darwin') {
81+
return {
82+
hostname: os.hostname(),
83+
os: osName,
84+
architecture: os.arch(),
85+
kernel_version: os.version(),
86+
kernel_release: os.release(),
87+
kernel_name: osName
88+
}
89+
}
90+
91+
if (osName === 'Windows_NT') {
92+
return {
93+
hostname: os.hostname(),
94+
os: osName,
95+
architecture: os.arch(),
96+
os_version: os.version()
97+
}
98+
}
99+
79100
return {
80101
hostname: os.hostname(), // TODO is this enough?
81-
container_id: containerId
102+
os: osName
82103
}
83104
}
84105

packages/dd-trace/test/telemetry/index.spec.js

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ const proxyquire = require('proxyquire')
55
const http = require('http')
66
const { once } = require('events')
77
const { storage } = require('../../../datadog-core')
8+
const os = require('os')
89

910
let traceAgent
1011

@@ -46,11 +47,6 @@ describe('telemetry', () => {
4647
id () {
4748
return 'test docker id'
4849
}
49-
},
50-
os: {
51-
hostname () {
52-
return 'test hostname'
53-
}
5450
}
5551
})
5652

@@ -178,11 +174,6 @@ describe('telemetry with interval change', () => {
178174
return 'test docker id'
179175
}
180176
},
181-
os: {
182-
hostname () {
183-
return 'test hostname'
184-
}
185-
},
186177
'./send-data': {
187178
sendData: () => {}
188179
}
@@ -229,6 +220,28 @@ async function testSeq (seqId, reqType, validatePayload) {
229220
'dd-telemetry-api-version': 'v1',
230221
'dd-telemetry-request-type': reqType
231222
})
223+
const osName = os.type()
224+
let host = {
225+
hostname: os.hostname(),
226+
os: osName
227+
}
228+
if (osName === 'Linux' || osName === 'Darwin') {
229+
host = {
230+
hostname: os.hostname(),
231+
os: osName,
232+
architecture: os.arch(),
233+
kernel_version: os.version(),
234+
kernel_release: os.release(),
235+
kernel_name: osName
236+
}
237+
} else if (osName === 'Windows_NT') {
238+
host = {
239+
hostname: os.hostname(),
240+
os: osName,
241+
os_version: os.version(),
242+
architecture: os.arch()
243+
}
244+
}
232245
expect(req.body).to.deep.include({
233246
api_version: 'v1',
234247
request_type: reqType,
@@ -242,10 +255,7 @@ async function testSeq (seqId, reqType, validatePayload) {
242255
language_name: 'nodejs',
243256
language_version: process.versions.node
244257
},
245-
host: {
246-
hostname: 'test hostname',
247-
container_id: 'test docker id'
248-
}
258+
host
249259
})
250260
expect([1, 0, -1].includes(Math.floor(Date.now() / 1000) - req.body.tracer_time)).to.be.true
251261

0 commit comments

Comments
 (0)