einfache LOG Datei für Variable
Moderator: Co-Administratoren
einfache LOG Datei für Variable
Hallo zusammen!
Habe z.Zt. ein einfaches Zähl-Skript am laufen, welches Schaltvorgänge zählt und in einer Variable „Verbrauch“ zur Anzeige bringt.
Wie kann ich den Wert dieser Variable täglich z.B. um 00:00 Uhr incl. Datum in eine Datei schreiben,
um dieses später zur Auswertung in eine Tabelle kopieren zu können?
Am besten auf einen USB-Stick um den Speicherplatz der CCU nicht zu belasten.
Fritzbox sowie CUXd ist auch vorhanden.
Ein 24h PC jedoch nicht...
Habe z.Zt. ein einfaches Zähl-Skript am laufen, welches Schaltvorgänge zählt und in einer Variable „Verbrauch“ zur Anzeige bringt.
Wie kann ich den Wert dieser Variable täglich z.B. um 00:00 Uhr incl. Datum in eine Datei schreiben,
um dieses später zur Auswertung in eine Tabelle kopieren zu können?
Am besten auf einen USB-Stick um den Speicherplatz der CCU nicht zu belasten.
Fritzbox sowie CUXd ist auch vorhanden.
Ein 24h PC jedoch nicht...
Re: einfache LOG Datei für Variable
Mit system.Exec("echo '" # blahfasel # "'>>/var/datadisk/schrubbelwupp"); geht das, so denn in der HMscript-Variable blahfasel das drinsteht, was du gerne loggen willst und ein USB-Stick unter /var/datadisk vorhanden ist.
83 Kanäle in 50 Geräten:
3x HM-LC-Sw1-Pl, 1x HM-WDS10-TH-O, 5x HM-PB-4-WM, 3x HM-PB-2-WM, 3x HM-LC-Dim1T-FM, 2x HM-Sec-SC, 4x HM-Sec-RHS, 5x HM-CC-VD, 4x HM-CC-TC, 5x HM-LC-Sw1-FM, 2x HM-Sec-MDIR, 1x HM-WDS30-T-O, 1x HM-LC-Sw1-Pl-2, 2x HM-PB-2-WM55, 1x HM-LC-Dim1L-CV, 1x HM-CCU-1, 1x HM-PBI-4-FM, 1x HM-LC-Dim1L-Pl-2, 1x HM-LC-Dim1T-CV, 1x HM-LC-Dim1L-Pl, 1x HM-LC-Sw2-FM, 1x HM-LC-Sw1-SM, 1x HM-Sec-WDS
82 Kanäle in 43 Geräten:
1x HM-PB-2-WM, 2x HM-LC-Bl1-FM, 3x HM-LC-Bl1PBU-FM, 3x HM-PB-2-WM55, 2x HM-PB-4-WM, 9x HM-CC-VD, 8x HM-CC-TC, 2x HM-LC-Sw2-FM, 1x HM-WDS10-TH-O, 1x HM-CCU-1, 1x HM-Sen-MDIR-O, 4x HM-LC-Sw1-FM, 2x HM-SwI-3-FM, 1x HM-LC-Sw4-SM, 1x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-WDS30-T-O
3x HM-LC-Sw1-Pl, 1x HM-WDS10-TH-O, 5x HM-PB-4-WM, 3x HM-PB-2-WM, 3x HM-LC-Dim1T-FM, 2x HM-Sec-SC, 4x HM-Sec-RHS, 5x HM-CC-VD, 4x HM-CC-TC, 5x HM-LC-Sw1-FM, 2x HM-Sec-MDIR, 1x HM-WDS30-T-O, 1x HM-LC-Sw1-Pl-2, 2x HM-PB-2-WM55, 1x HM-LC-Dim1L-CV, 1x HM-CCU-1, 1x HM-PBI-4-FM, 1x HM-LC-Dim1L-Pl-2, 1x HM-LC-Dim1T-CV, 1x HM-LC-Dim1L-Pl, 1x HM-LC-Sw2-FM, 1x HM-LC-Sw1-SM, 1x HM-Sec-WDS
82 Kanäle in 43 Geräten:
1x HM-PB-2-WM, 2x HM-LC-Bl1-FM, 3x HM-LC-Bl1PBU-FM, 3x HM-PB-2-WM55, 2x HM-PB-4-WM, 9x HM-CC-VD, 8x HM-CC-TC, 2x HM-LC-Sw2-FM, 1x HM-WDS10-TH-O, 1x HM-CCU-1, 1x HM-Sen-MDIR-O, 4x HM-LC-Sw1-FM, 2x HM-SwI-3-FM, 1x HM-LC-Sw4-SM, 1x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-WDS30-T-O
Re: einfache LOG Datei für Variable
Hallo Goglo,
Hhm, danke für Info.
Habe noch einige Beiträge zu ähnlichem Thema gelesen und bin nun etwas verwirrt ob es überhaupt noch solche gute Idee ist, direkt auf den Stick zu schreiben, bzw. System.exec zu benutzen:-/
Vielleicht doch irgendwie über CuxD??
Leider habe ich mit cuxD nicht viel Erfahrung.
Nutze es nur für meinen PioTec-Tracker.
Es muss doch irgendwie möglich sein ohne großen aufwand den Zahlenwert einer Variable einmal täglich in eine Textdatei zu schreiben?:-/
Gruß aus HAM
Hhm, danke für Info.
Habe noch einige Beiträge zu ähnlichem Thema gelesen und bin nun etwas verwirrt ob es überhaupt noch solche gute Idee ist, direkt auf den Stick zu schreiben, bzw. System.exec zu benutzen:-/
Vielleicht doch irgendwie über CuxD??
Leider habe ich mit cuxD nicht viel Erfahrung.
Nutze es nur für meinen PioTec-Tracker.
Es muss doch irgendwie möglich sein ohne großen aufwand den Zahlenwert einer Variable einmal täglich in eine Textdatei zu schreiben?:-/
Gruß aus HAM
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: einfache LOG Datei für Variable
Kurz mal als Ansatz ohne Anspruch auf Schönheit.
Das Ganze erfordert CUxD zur Umgehung des system.exec.
Den NAMEN DEINER VARIABLEN musst Du anpassen.
Und weiter unten im Script den Pfad zur Log Datei. /home/test.log wobei /home der Stick ist....
Das Script 1 x täglich per Zeitsteuerung zu 23:55 aufgerufen sollte Dir das Gewünschte bringen,
falls ich dich richtig interpretiert habe.
Alchy
Das Ganze erfordert CUxD zur Umgehung des system.exec.
Den NAMEN DEINER VARIABLEN musst Du anpassen.
Und weiter unten im Script den Pfad zur Log Datei. /home/test.log wobei /home der Stick ist....
Das Script 1 x täglich per Zeitsteuerung zu 23:55 aufgerufen sollte Dir das Gewünschte bringen,
falls ich dich richtig interpretiert habe.
Code: Alles auswählen
object ay = dom.GetObject("NAME_DEINER_VARIABLEN");
var date = system.Date("%d.%m.%Y ");
var value = ay.Value();
var cmd = 'echo "' # date #' ' # value # '" ' # '>> /home/test.log';
object lauf = dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC");
lauf.State(cmd);
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: einfache LOG Datei für Variable
Hallo Alchy,
Ja, das ist eigentlich genau das was ich mir vorstelle:-)
Einmal täglich soll der Wert der Variablen in die Textdatei geschrieben werden.
Wird denn auch am nächsten Tag eine NEUE Zeile in der Datei geschrieben? ( d.h. Das alte soll nicht überschrieben werden...)
Kann ich den USB Stick einfach so in die CCU stecken oder muss da noch etwas vorbereitet werden? Habe irgendwo mal etwas von "mounten" gelesen??
Danke und Gruss!
Ja, das ist eigentlich genau das was ich mir vorstelle:-)
Einmal täglich soll der Wert der Variablen in die Textdatei geschrieben werden.
Wird denn auch am nächsten Tag eine NEUE Zeile in der Datei geschrieben? ( d.h. Das alte soll nicht überschrieben werden...)
Kann ich den USB Stick einfach so in die CCU stecken oder muss da noch etwas vorbereitet werden? Habe irgendwo mal etwas von "mounten" gelesen??
Danke und Gruss!
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: einfache LOG Datei für Variable
Ja es wird nix überschrieben, immer hinten angehangen.
Wenn Du immer eine neue Zeile einfügen willst musst Du das Script noch anpassen,
sollte dann irgendwie so aussehen. Wie gesagt quick and dirty:
Zum Anschluss / Mounten eines USB Sticks hilft Dir auch >> CUxD << weiter. Siehe im Handbuch dazu.
Alchy
unterwegs getippelt
Wenn Du immer eine neue Zeile einfügen willst musst Du das Script noch anpassen,
sollte dann irgendwie so aussehen. Wie gesagt quick and dirty:
Code: Alles auswählen
object ay = dom.GetObject("NAME_DEINER_VARIABLEN");
var date = system.Date("%d.%m.%Y ");
var value = ay.Value();
var cmd = 'echo "' # date #' ' # value #"\r\n" # '" ' # '>> /home/testlog.log';
object lauf = dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC");
lauf.State(cmd);
Alchy
unterwegs getippelt
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: einfache LOG Datei für Variable
Wenn ich nur einmal täglich die Log Datei um eine Zeile erweitere, ist es dann überhaupt nötig einen USB stick zu nutzen, bzw. die Datei auszulagern? Kann ich die nicht direkt auf der CCU ablegen und von zeit zu zeit Auslesen (mit FTP?) und einmal jährlich löschen??
Re: einfache LOG Datei für Variable
Doch, auch das geht. Schreiben auf Flash-Speicher geht halt nur ein paar tausend Mal, dann ist die Speicherzelle kaputt. Und ein USB-Stick ist schneller getauscht als fest aufgelöteter Speicher. Aber wenn da nur einmal am Tag drauf geschrieben wird, würde ich sagen, ist die CCU schneller zu langsam als dass der interne Speicher die Grätsche macht...
83 Kanäle in 50 Geräten:
3x HM-LC-Sw1-Pl, 1x HM-WDS10-TH-O, 5x HM-PB-4-WM, 3x HM-PB-2-WM, 3x HM-LC-Dim1T-FM, 2x HM-Sec-SC, 4x HM-Sec-RHS, 5x HM-CC-VD, 4x HM-CC-TC, 5x HM-LC-Sw1-FM, 2x HM-Sec-MDIR, 1x HM-WDS30-T-O, 1x HM-LC-Sw1-Pl-2, 2x HM-PB-2-WM55, 1x HM-LC-Dim1L-CV, 1x HM-CCU-1, 1x HM-PBI-4-FM, 1x HM-LC-Dim1L-Pl-2, 1x HM-LC-Dim1T-CV, 1x HM-LC-Dim1L-Pl, 1x HM-LC-Sw2-FM, 1x HM-LC-Sw1-SM, 1x HM-Sec-WDS
82 Kanäle in 43 Geräten:
1x HM-PB-2-WM, 2x HM-LC-Bl1-FM, 3x HM-LC-Bl1PBU-FM, 3x HM-PB-2-WM55, 2x HM-PB-4-WM, 9x HM-CC-VD, 8x HM-CC-TC, 2x HM-LC-Sw2-FM, 1x HM-WDS10-TH-O, 1x HM-CCU-1, 1x HM-Sen-MDIR-O, 4x HM-LC-Sw1-FM, 2x HM-SwI-3-FM, 1x HM-LC-Sw4-SM, 1x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-WDS30-T-O
3x HM-LC-Sw1-Pl, 1x HM-WDS10-TH-O, 5x HM-PB-4-WM, 3x HM-PB-2-WM, 3x HM-LC-Dim1T-FM, 2x HM-Sec-SC, 4x HM-Sec-RHS, 5x HM-CC-VD, 4x HM-CC-TC, 5x HM-LC-Sw1-FM, 2x HM-Sec-MDIR, 1x HM-WDS30-T-O, 1x HM-LC-Sw1-Pl-2, 2x HM-PB-2-WM55, 1x HM-LC-Dim1L-CV, 1x HM-CCU-1, 1x HM-PBI-4-FM, 1x HM-LC-Dim1L-Pl-2, 1x HM-LC-Dim1T-CV, 1x HM-LC-Dim1L-Pl, 1x HM-LC-Sw2-FM, 1x HM-LC-Sw1-SM, 1x HM-Sec-WDS
82 Kanäle in 43 Geräten:
1x HM-PB-2-WM, 2x HM-LC-Bl1-FM, 3x HM-LC-Bl1PBU-FM, 3x HM-PB-2-WM55, 2x HM-PB-4-WM, 9x HM-CC-VD, 8x HM-CC-TC, 2x HM-LC-Sw2-FM, 1x HM-WDS10-TH-O, 1x HM-CCU-1, 1x HM-Sen-MDIR-O, 4x HM-LC-Sw1-FM, 2x HM-SwI-3-FM, 1x HM-LC-Sw4-SM, 1x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-WDS30-T-O
Re: einfache LOG Datei für Variable
Ach du Schande:-
...dann versuche ich es wohl doch lieber mit dem USB-Stick!;-)
...dann versuche ich es wohl doch lieber mit dem USB-Stick!;-)
-
- Beiträge: 3
- Registriert: 09.01.2021, 17:54
- System: CCU
Re: einfache LOG Datei für Variable
Hi Alchy,
genau diesen script-code habe ich lange gesucht. Habe das Script für meine Bedürfnisse angepasst und nun läuft alles super.
Vielen Dank
genau diesen script-code habe ich lange gesucht. Habe das Script für meine Bedürfnisse angepasst und nun läuft alles super.
Vielen Dank