From 979080979e3b328271526f41cb2980fbbf3f1742 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=93=B2=E6=9D=B0?= Date: Mon, 25 May 2026 18:59:09 +0800 Subject: [PATCH] feat: add gpu index for nvidia-smi input --- inputs/nvidia_smi/fields.go | 1 + inputs/nvidia_smi/nvidia_smi.go | 4 +++- inputs/nvidia_smi/types.go | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/inputs/nvidia_smi/fields.go b/inputs/nvidia_smi/fields.go index 95817575f..ff606ec85 100644 --- a/inputs/nvidia_smi/fields.go +++ b/inputs/nvidia_smi/fields.go @@ -14,6 +14,7 @@ import ( const ( uuidQField qField = "uuid" + indexQField qField = "index" nameQField qField = "name" driverModelCurrentQField qField = "driver_model.current" driverModelPendingQField qField = "driver_model.pending" diff --git a/inputs/nvidia_smi/nvidia_smi.go b/inputs/nvidia_smi/nvidia_smi.go index bab07273e..173d08a0a 100644 --- a/inputs/nvidia_smi/nvidia_smi.go +++ b/inputs/nvidia_smi/nvidia_smi.go @@ -80,6 +80,7 @@ func (s *GPUStats) Gather(slist *types.SampleList) { for _, currentRow := range currentTable.rows { uuid := strings.TrimPrefix(strings.ToLower(currentRow.qFieldToCells[uuidQField].rawValue), "gpu-") + index := currentRow.qFieldToCells[indexQField].rawValue name := currentRow.qFieldToCells[nameQField].rawValue driverModelCurrent := currentRow.qFieldToCells[driverModelCurrentQField].rawValue driverModelPending := currentRow.qFieldToCells[driverModelPendingQField].rawValue @@ -88,6 +89,7 @@ func (s *GPUStats) Gather(slist *types.SampleList) { slist.PushFront(types.NewSample(inputName, "gpu_info", 1, map[string]string{ "uuid": uuid, + "index": index, "name": name, "driver_model_current": driverModelCurrent, "driver_model_pending": driverModelPending, @@ -106,7 +108,7 @@ func (s *GPUStats) Gather(slist *types.SampleList) { continue } - slist.PushFront(types.NewSample(inputName, metricInfo.metricName, num, map[string]string{"uuid": uuid})) + slist.PushFront(types.NewSample(inputName, metricInfo.metricName, num, map[string]string{"uuid": uuid, "index": index})) } } } diff --git a/inputs/nvidia_smi/types.go b/inputs/nvidia_smi/types.go index f722ca6d2..e982ec627 100644 --- a/inputs/nvidia_smi/types.go +++ b/inputs/nvidia_smi/types.go @@ -24,6 +24,7 @@ var ( requiredFields = []qField{ uuidQField, + indexQField, nameQField, driverModelCurrentQField, driverModelPendingQField,