NEWS
In Blockly erzeugte Datei in Grafana nicht sichtbar
-
@codierknecht
Was ich eigentlich möchte: die Zahlen in den []Klammern sind tägliche Verbräuche. Ich möchte sie mit der JSON Datei in Grafana visualisieren. Dafür brauche ich noch die Zeitstempeln im Format dd.mm und dachte, dass diese JSON täglich zu aktualisieren. Du hast sicherlich eine Idee, wie ich das machen kann, oder? -
@wibear
Also ich mache das so:- Ich habe eigene DP für die täglichen Werte angelegt (Erzeugung, Verbrauch etc.).
- Diese DP werden per SQL-Adapter in eine MariaDB geloggt.
- Ein kleines Blockly schreibt um 23:59 Uhr die Tageswerte aus Modbus usw. in diese DP. Damit werden sie mit passendem Timestamp in die DB geschrieben .
-
@wibear kann es sein, dass Grafana dieses "json" nicht versteht?
-
@homoran sagte in In Blockly erzeugte Datei in Grafana nicht sichtbar:
kann es sein, dass Grafana dieses "json" nicht versteht?
Ja, ist mir klar. Ich muss diese Werte noch mit TimeStamp ergänzen.
@codierknecht sagte in In Blockly erzeugte Datei in Grafana nicht sichtbar:
Ich habe eigene DP für die täglichen Werte angelegt
Ich habe auch die DPs für Verbrauch und TimeStamp angelegt und sie werden da geschrieben.
Ich weiss nur nicht, wie ich daraus eine Liste oder JSON mache, um in Grafana z.B. mit Infinity zu visualisieren.<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="WD@DM*+{~7]Pgweah,=%">StringTag</variable> <variable id=":Ss+S+t]46%mA6RYdzOe">WertTag</variable> <variable id=")exQA3aPF!=uE^rtI_Dw">TimeStamp</variable> </variables> <block type="on" id="`n--I!yft.c)T;qsBs(@" x="-562" y="-1362"> <field name="OID">ems-esp.0.energy.actualDHWPower.Days</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="debug" id="1,Phdi|Vxe(W+4PzYvM%"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="jBi`!8jQq+j2om#/N+YZ"> <field name="TEXT">test</field> </shadow> <block type="on_source" id="(0%|Y(f1m21#j:)#Z=M2"> <field name="ATTR">state.val</field> </block> </value> <next> <block type="variables_set" id=",k4`CBty8XOG$ogsJkcg"> <field name="VAR" id="WD@DM*+{~7]Pgweah,=%">StringTag</field> <value name="VALUE"> <block type="convert_json2object" id="po%u$2O2T+n%9}Z`TO*f"> <value name="VALUE"> <block type="on_source" id=")9(479Qd*!hnnO8DxJeu"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <next> <block type="debug" id=".uBII6Q0#9zQ0KrWkFLM"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="jBi`!8jQq+j2om#/N+YZ"> <field name="TEXT">test</field> </shadow> <block type="lists_getIndex" id="na:U:=z=x=pV0D4~El?K"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="ik~4z:6I#Qf;rABt^})w"> <field name="VAR" id="WD@DM*+{~7]Pgweah,=%">StringTag</field> </block> </value> <value name="AT"> <block type="math_number" id="16YnwM{NzEEVhXqpLm5M"> <field name="NUM">1</field> </block> </value> </block> </value> <next> <block type="variables_set" id="n:f3BD}Jax%gTahIGtSb"> <field name="VAR" id=":Ss+S+t]46%mA6RYdzOe">WertTag</field> <value name="VALUE"> <block type="lists_getIndex" id="!mss-i]3T5,6%8?pzZ!q"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="gm$s=q-`u:L(Nc|Wvmq$"> <field name="VAR" id="WD@DM*+{~7]Pgweah,=%">StringTag</field> </block> </value> <value name="AT"> <block type="math_number" id="dZwLRZ0EbQAE04DXO8.b"> <field name="NUM">1</field> </block> </value> </block> </value> <next> <block type="update" id="C[oZB)Mr@q3|D%w~g2$c"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.sConsumWwTag</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="QP@`RO6jwJ,*5{t;{w~?"> <field name="VAR" id=":Ss+S+t]46%mA6RYdzOe">WertTag</field> </block> </value> <next> <block type="variables_set" id="RLM,SsoP|:D-bn4x%n31"> <field name="VAR" id=")exQA3aPF!=uE^rtI_Dw">TimeStamp</field> <value name="VALUE"> <block type="convert_from_date" id="2kiA#:]PbG5k.*WNUpOr"> <mutation xmlns="http://www.w3.org/1999/xhtml" format="true" language="false"></mutation> <field name="OPTION">custom</field> <field name="FORMAT">TT.MM</field> <value name="VALUE"> <block type="get_value" id="x5I?.EiUV-~zoA*Un1]E"> <field name="ATTR">ts</field> <field name="OID">ems-esp.0.energy.actualDHWPower.Days</field> </block> </value> </block> </value> <next> <block type="debug" id="=kGu{-@wZ$5A4E,K#A*o"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="Bkw?M51kA1d%PpG}Z.mC"> <field name="TEXT">test</field> </shadow> <block type="variables_get" id=";kMMrp|,d`;ny=PKFMg{"> <field name="VAR" id=")exQA3aPF!=uE^rtI_Dw">TimeStamp</field> </block> </value> <next> <block type="update" id=":WW88$Qt?Og{:pY.e$oF"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.nDateWw</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="#qDk$K4ShM?I+D^NzKl;"> <field name="VAR" id=")exQA3aPF!=uE^rtI_Dw">TimeStamp</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> <block type="create_ex" id="#4IBM`DknQCR1G#Z}Ppr" disabled="true" x="-537" y="-837"> <field name="NAME">0_userdata.0.nDateWw</field> <field name="TYPE">number</field> <field name="READABLE">TRUE</field> <field name="WRITEABLE">TRUE</field> <next> <block type="create_ex" id="1NB9@6*=PJhvrJ{DPme%" disabled="true"> <field name="NAME">0_userdata.0.nDateHz</field> <field name="TYPE">number</field> <field name="READABLE">TRUE</field> <field name="WRITEABLE">TRUE</field> </block> </next> </block> <block type="create_ex" id="O)emTGRoK$5W}.:TY=az" disabled="true" x="-237" y="-837"> <field name="NAME">0_userdata.0.sConsumHzTag</field> <field name="TYPE">number</field> <field name="READABLE">TRUE</field> <field name="WRITEABLE">TRUE</field> <next> <block type="create_ex" id="W*S;SMQBQT7Z$W,CRzVn" disabled="true"> <field name="NAME">0_userdata.0.sConsumWwTag</field> <field name="TYPE">number</field> <field name="READABLE">TRUE</field> <field name="WRITEABLE">TRUE</field> </block> </next> </block> <block type="create_ex" id=")k6k!%{SS1L#1Kv`D?or" disabled="true" x="113" y="-837"> <field name="NAME">0_userdata.0.sConsumWwMonat</field> <field name="TYPE">number</field> <field name="READABLE">TRUE</field> <field name="WRITEABLE">TRUE</field> <next> <block type="create_ex" id="EGv2cv?=y2rq1hXeBX3W" disabled="true"> <field name="NAME">0_userdata.0.sConsumHzMonat</field> <field name="TYPE">number</field> <field name="READABLE">TRUE</field> <field name="WRITEABLE">TRUE</field> </block> </next> </block> </xml>
-
@wibear und warum dann nicht über den ganz normalen Weg mit einer Datenbak jnd logging des/der Datenpunkte?
sollte doch nicht umständlicher sein, als das momentan praktizierte. -
@wibear sagte in In Blockly erzeugte Datei in Grafana nicht sichtbar:
Ich weiss nur nicht, wie ich daraus eine Liste oder JSON mache, um in Grafana z.B. mit Infinity zu visualisieren.
Warum das?
Das geht doch per SQL viel einfacher: -
@homoran sagte in In Blockly erzeugte Datei in Grafana nicht sichtbar:
warum dann nicht über den ganz normalen Weg mit einer Datenbak jnd logging des/der Datenpunkte?
Wie kann ich in diesem Fall die Zeitachse (X) in Grafana auf einzelne Tage als Bezugspunkte darstellen, damit es so schön aussuieht wie mit MySql (Vorschlag von @Codierknecht) ?
-
@codierknecht sagte in In Blockly erzeugte Datei in Grafana nicht sichtbar:
Das geht doch per SQL viel einfacher
Sieht sehr gut aus. Nur ich habe schon InfluxDb und möchte keine weitere DB anlegen. Geht so was auch mit der InfluxDb? Danke.
-
@wibear sagte in In Blockly erzeugte Datei in Grafana nicht sichtbar:
Geht so was auch mit der InfluxDb?
Natürlich!
Da bin ich aber raus
Wie kann ich in diesem Fall die Zeitachse (X) in Grafana auf einzelne Tage als Bezugspunkte darstellen
Du hast ja 2 Werte mit nur wenigen Minuten Abstand. Ich vermute mal, zu Testzwecken.
Schreibt man per Script nur einen Wert am Ende des Tages, reicht ein Override um das wie gewünscht zu formatieren: -
@codierknecht
Danke!