es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Reetiquetando la leyenda en Grafana

Esta es mi primera pregunta, así que por favor no me lapiden 😀
Estoy ejecutando una pila de domótica que contiene mqtt, telegraf, influxdb2 y grafana8 utilizando sensores bme280.
todo funciona sin problemas después de algunos problemas, pero tengo algunos problemas para cambiar el nombre de la leyenda en mi panel de control de grafana.

mi consulta flux:

from(bucket: "bme280")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "mqtt_consumer")
|> filter(fn: (r) => r["topic"] == "sensors/bk/temp" or r["topic"] == "sensors/sz/temp" or r["topic"] == "sensors/wz/temp")
|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
|> yield(name: "mean")

resulta en un buen gráfico, sin embargo, no me gusta la leyenda que dice:


- value {host="raspi", topic="sensors/bk/temp"}
- value {host="raspi", topic="sensors/sz/temp"}
- value {host="raspi", topic="sensors/wz/temp"}

Debería mostrar:


- Temperatura Balcón
- Temperatura Habitación dormitorio
- Temperatura Sala de estar

Puedo cambiar la etiqueta “value” a algo diferente usando:

|> set(key: "value", value: "temperature")

Pero la parte en “{}” no está cubierta. ¿Hay alguna manera de eliminar esta parte o al menos cambiarla?
Ver imagen: aquí

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para cambiar el nombre de la leyenda en Grafana, debes modificar los nombres de las columnas de salida de la consulta Flux mediante la función ‘rename’. En tu caso, puedes modificar la consulta de la siguiente manera:

    from(bucket: "bme280")
      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
      |> filter(fn: (r) => r["_measurement"] == "mqtt_consumer")
      |> filter(fn: (r) => r["topic"] == "sensors/bk/temp" or r["topic"] == "sensors/sz/temp" or r["topic"] == "sensors/wz/temp")
      |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
      |> rename(columns: {topic: "location"})
      |> yield(name: "mean")
    

    En la consulta anterior, hemos agregado la función ‘rename’ para cambiar el nombre de la columna ‘topic’ a ‘location’. Puedes modificar el valor de la columna ‘location’ con los nombres deseados. Una vez que hayas modificado la consulta, guarda y actualiza tu panel de Grafana para ver la leyenda actualizada.

Comments are closed.