@cryptotaxi247 / netdata-1 / commits / fe8719214

improvement(go.d): add `_hostname` label for virtual nodes (#20030)

go.d virtual node send _hostname label

Ilya Mashchenko committed Apr 2, 2025 at 11:05 UTC fe87192141486113f1d885d224024ed28d3b63bf
1 file changed +17 -10
src/go/plugin/go.d/agent/module/job.go
+17 -10
@@ -313,11 +313,7 @@ func (j *Job) Cleanup() {
313 }
314
315 if !j.vnodeCreated && j.vnode.GUID != "" {
316 - j.api.HOSTINFO(netdataapi.HostInfo{
317 - GUID: j.vnode.GUID,
318 - Hostname: j.vnode.Hostname,
319 - Labels: j.vnode.Labels,
320 - })
316 + j.sendVnodeHostInfo()
317 j.vnodeCreated = true
318 }
319 j.api.HOST(j.vnode.GUID)
@@ -435,11 +431,7 @@ func (j *Job) processMetrics(metrics map[string]int64, startTime time.Time, sinc
431 }
432 }
433 if j.vnode.GUID != "" {
438 - j.api.HOSTINFO(netdataapi.HostInfo{
439 - GUID: j.vnode.GUID,
440 - Hostname: j.vnode.Hostname,
441 - Labels: j.vnode.Labels,
442 - })
434 + j.sendVnodeHostInfo()
435 j.vnodeCreated = true
436 }
437 }
@@ -498,6 +490,21 @@ func (j *Job) processMetrics(metrics map[string]int64, startTime time.Time, sinc
490 return true
491 }
492
493 +func (j *Job) sendVnodeHostInfo() {
494 + if j.vnode.Labels == nil {
495 + j.vnode.Labels = make(map[string]string)
496 + }
497 + if _, ok := j.vnode.Labels["_hostname"]; !ok {
498 + j.vnode.Labels["_hostname"] = j.vnode.Hostname
499 + }
500 +
501 + j.api.HOSTINFO(netdataapi.HostInfo{
502 + GUID: j.vnode.GUID,
503 + Hostname: j.vnode.Hostname,
504 + Labels: j.vnode.Labels,
505 + })
506 +}
507 +
508 func (j *Job) createChart(chart *Chart) {
509 defer func() { chart.created = true }()
510 if chart.ignore {