SVG Plot Daten aus Log lesen ohne Leerzeichen

Begonnen von jan4321, 04 März 2019, 15:14:43

Vorheriges Thema - Nächstes Thema

jan4321

Hallo,
ich habe folgendes Log, von dem ich gerne Sensor 1 und Sensor 2 die Temperatur und Luftfeuchtigkeit plotten möchte.

2019-03-04_15:01:22 mqttTempSensor sensor1: {"temperature":22.95,"linkquality":134,"humidity":53.04,"pressure":981,"battery":100,"voltage":3005}
2019-03-04_15:04:40 mqttTempSensor sensor2: {"temperature":21.4,"linkquality":42,"humidity":54.35,"pressure":981,"battery":100,"voltage":3005}
2019-03-04_15:04:40 mqttTempSensor transmission-state: incoming publish received

Wie muss ich beim SVG Plot die Felder Column, Regexp,DefaultValue und Function ausfüllen, damit er die werte aus den String extrahiert? wie definiert man beispielsweise dass er den String zwischen "temperature:" und "," auswählt?

rudolfkoenig

Eigentlich konvertiert man diese Daten in Einzel-Readings beim Empfang (z.Bsp. macht MQTT2_DEVICE das bei autocreate mit json2nameValue automatisch), und man protokolliert die Einzel-Readings. Wen man unbedingt mehrere Werte in einer Zeile haben will, dann kann man mit userReadings diese wieder zusammenstellen, dann sind diese Zeilen mit SVG einfach verdaulich.

In diesem Fall muss man regexp bemuehen. D.h. im SVG-Editor traegt man ein:
- in der Filter Spalte mqttTempSensor.sensor1:
- in der Function Spalte $fld[3]=~m/"temperature":([\d.]*)/?$1:0
usw.

Frank_Huber

Im sysmon RAM plot wird auch ein log Eintrag auf 3 Linien geteilt.
Schau doch dort ab wie es geht.

Gesendet von meinem Doogee S60 mit Tapatalk