SNMP Mikrotik profile make units in transform ucum (#20611)
Co-authored-by: Ilya Mashchenko <ilya@netdata.cloud>
Fotis Voutsas committed
Jul 1, 2025 at 10:19 UTC
137b6cbe10c51a8c3cdb71eb11e72b321312a771
3 files changed
+16
-16
src/go/plugin/go.d/collector/snmp/ddsnmp/transform.go
+9
-9
@@ -172,15 +172,15 @@ func newMetricTransformFuncMap() template.FuncMap {
172
config := map[string]map[string]interface{}{
173
"1": {"name": "unspecified", "family": "Sensor/Generic/Value", "desc": "Unspecified or vendor-specific sensor"},
174
"2": {"name": "unknown", "family": "Sensor/Unknown/Value", "desc": "Unknown sensor type"},
175
- "3": {"name": "voltage_ac", "unit": "volts", "family": "Sensor/Voltage/AC", "desc": "AC voltage"},
176
- "4": {"name": "voltage_dc", "unit": "volts", "family": "Sensor/Voltage/DC", "desc": "DC voltage"},
177
- "5": {"name": "current", "unit": "amperes", "family": "Sensor/Current/Value", "desc": "Current draw"},
178
- "6": {"name": "power", "unit": "watts", "family": "Sensor/Power/Value", "desc": "Power consumption"},
179
- "7": {"name": "frequency", "unit": "hertz", "family": "Sensor/Frequency/Value", "desc": "Frequency"},
180
- "8": {"name": "temperature", "unit": "celsius", "family": "Sensor/Temperature/Value", "desc": "Temperature reading"},
181
- "9": {"name": "humidity", "unit": "percentage", "family": "Sensor/Humidity/Value", "desc": "Relative humidity"},
182
- "10": {"name": "fan_speed", "unit": "rpm", "family": "Sensor/FanSpeed/Value", "desc": "Fan rotation speed"},
183
- "11": {"name": "airflow", "unit": "cmm", "family": "Sensor/Airflow/Value", "desc": "Airflow in cubic meters per minute"},
175
+ "3": {"name": "voltage_ac", "unit": "V", "family": "Sensor/Voltage/AC", "desc": "AC voltage"},
176
+ "4": {"name": "voltage_dc", "unit": "V", "family": "Sensor/Voltage/DC", "desc": "DC voltage"},
177
+ "5": {"name": "current", "unit": "A", "family": "Sensor/Current/Value", "desc": "Current draw"},
178
+ "6": {"name": "power", "unit": "W", "family": "Sensor/Power/Value", "desc": "Power consumption"},
179
+ "7": {"name": "frequency", "unit": "Hz", "family": "Sensor/Frequency/Value", "desc": "Frequency"},
180
+ "8": {"name": "temperature", "unit": "Cel", "family": "Sensor/Temperature/Value", "desc": "Temperature reading"},
181
+ "9": {"name": "humidity", "unit": "%", "family": "Sensor/Humidity/Value", "desc": "Relative humidity"},
182
+ "10": {"name": "fan_speed", "unit": "{revolution}/min", "family": "Sensor/FanSpeed/Value", "desc": "Fan rotation speed"},
183
+ "11": {"name": "airflow", "unit": "m3/min", "family": "Sensor/Airflow/Value", "desc": "Airflow in cubic meters per minute"},
184
"12": {"name": "sensor_state", "family": "Sensor/State/Value", "desc": "Boolean sensor state", "mapping": map[int64]string{
185
0: "false", 1: "true", 2: "true",
186
}},
src/go/plugin/go.d/config/go.d/snmp.profiles/default/alcatel-lucent-ent.yaml
+1
-1
@@ -333,7 +333,7 @@ metrics:
333
OID: 1.3.6.1.4.1.6486.801.1.1.1.3.1.1.11.1.4
334
description: Fan speed in revolutions per minute
335
family: Fan/Speed
336
- unit: "{revolutions}/min"
336
+ unit: "{revolution}/min"
337
metric_tags:
338
- tag: ala_chas_ent_phys_fan_status
339
symbol:
src/go/plugin/go.d/config/go.d/snmp.profiles/default/mikrotik-router.yaml
+6
-6
@@ -186,15 +186,15 @@ metrics:
186
transform: |
187
{{- $sensorType := index .Metric.Tags "sensor_type" | default "" -}}
188
{{- $config := get (dict
189
- "1" (dict "name" "temperature" "unit" "celsius" "family" "Sensor/Temperature/Value"
189
+ "1" (dict "name" "temperature" "unit" "Cel" "family" "Sensor/Temperature/Value"
190
"desc" "Temperature reading")
191
- "2" (dict "name" "fan_speed" "unit" "rpm" "family" "Sensor/FanSpeed/Value"
191
+ "2" (dict "name" "fan_speed" "unit" "{revolution}/min" "family" "Sensor/FanSpeed/Value"
192
"desc" "Fan rotation speed")
193
- "3" (dict "name" "voltage" "unit" "volts" "family" "Sensor/Voltage/Value" "divisor" 10.0
193
+ "3" (dict "name" "voltage" "unit" "V" "family" "Sensor/Voltage/Value" "divisor" 10.0
194
"desc" "Voltage measurement")
195
- "4" (dict "name" "current" "unit" "amperes" "family" "Sensor/Current/Value" "divisor" 10.0
195
+ "4" (dict "name" "current" "unit" "A" "family" "Sensor/Current/Value" "divisor" 10.0
196
"desc" "Current draw")
197
- "5" (dict "name" "power" "unit" "watts" "family" "Sensor/Power/Value" "divisor" 10.0
197
+ "5" (dict "name" "power" "unit" "W" "family" "Sensor/Power/Value" "divisor" 10.0
198
"desc" "Power consumption")
199
"6" (dict "name" "sensor_status" "family" "Sensor/Presence/Status"
200
"mapping" (i64map 0 "absent_or_faulty" 1 "present_and_ok")
@@ -202,7 +202,7 @@ metrics:
202
"7" (dict "name" "sensor_state" "family" "Sensor/State/Value"
203
"mapping" (i64map 0 "false" 1 "true")
204
"desc" "Boolean sensor state")
205
- "8" (dict "name" "usage_percentage" "unit" "percentage" "family" "Sensor/Usage/Value"
205
+ "8" (dict "name" "usage_percentage" "unit" "%" "family" "Sensor/Usage/Value"
206
"desc" "Resource utilization percentage")
207
) $sensorType -}}
208