wie Rule nur 1x ausführen ?

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: wie Rule nur 1x ausführen ?

Beitrag von PeterA »

Jupp, mache ich hier genauso.
Log Level auf Warn und schon ist "Ruhe" im Logviewer 😀
Nur wenn ich editiere setze ich wieder auf "info".

Funktioniert sehr gut.

Gruß
- OpenHab 2.4
#PWRUP

Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

Re: wie Rule nur 1x ausführen ?

Beitrag von Steinspiel »

peter-pan hat geschrieben: 17. Jan 2020 00:10 [...]
Ich "spiele" seit ungefähr 1 1/2 Jahren mit OH2 und hatte (klopf auf Holz) noch nie einen SD-Karten-Crash. Ich habe aber 2 Ersatzkarten, auf die ein per "Win32Diskmanger" erstelltes Image wieder zurück geschrieben werden können, und die dann auch funktionieren (getestet).
Das war eine eher schwere Geburt hier: mit "Paragon Festplatten Mng." ging das erstellen des Images von der "Betriebs SD" schnell und einfach. Wie das zurückschreiben auf eine neue SD Karte auch. Allerdings gab es am Ende eine Meldung " sollte sich Linux auf der SD Karte befinden, bitte den Bootloader neu initialisieren" - und wie? Wie zu erwarten bootete der Raspi auch nicht von dieser Karte. Dann habe ich mit "Win32Diskmanger" ein Image erstellt welches dieser anschließend nicht zurückschreiben wollte! :-( Das habe ich dann mit Etcher gemacht und siehe da, der Raspi bootette! :-)
Etwas umständlich und mit Paragon wäre es mir lieber, aber immerhin läuft der Raspi jetzt mit der neu erstellten Karte und so im Tauschbetrieb werde ich das auch beibehalten ....

Das Verhalten der Logs zu ändern habe ich schon woanders gelesen. Danke das Du mir die Befehle aufgeschrieben hast!

schönes WE
bis dann, Steinspiel

Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

Re: wie Rule nur 1x ausführen ?

Beitrag von Steinspiel »

udo1toni hat geschrieben: 16. Jan 2020 22:52 [...]
Natürlich ist das nur sinnvoll, wenn die Abbruchbedingung if(nCount > 0) return; nicht mehr aktiv ist, sonst wird der Counter ja nur zwischen 0 und 1 wechseln.
Wie immer gut Erklärt! Ich werde es probieren, Danke.
bis dann, Steinspiel

Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

Re: wie Rule nur 1x ausführen ?

Beitrag von Steinspiel »

Moin,
peter-pan hat geschrieben: 17. Jan 2020 00:10 [...]
Gehe einfach in die Console (openhab-cli console) und ändere das Log-Verhalten deine Events:
[...]
Ich denke mit "openhab-cli console" meintest Du das: nachdem ich mich per SSH mit dem Raspberry verbunden habe, ich mich noch einmal im SSH Fenster mit der Eingabe

Code: Alles auswählen

ssh openhab@localhost -p 8101 
mit "was auch immer" verbunden habe? ;-)
Im Ernst, "da" war ich bisher noch nie gewesen. Auf den Befehl bin ich eher zufällig gestoßen, was ist das: das "eigentliche openHAB" ? Ich weiß nicht wie ich die Frage sonst ausdrücken sollte, bisher dachte ich das das Verbinden per SSH mit der IP des Raspberry mich zu der "Kommandozeile" von openHAB bringt...

Egal, "Log:List" zeigte eine Tabelle mit "Logger" und "Level" an (ich nehme mal an das sind die verschiedenen Logfiles, oder?), wobei die bei Dir aufgelisteten, bei mir schon genau den gleichen WARN oder ERROR Level hatten. Bedeutet das das die "Logfiles" so konfiguriert sind das sie nur Fehlermeldungen bzw. Warnungen mitprotokollieren? Falls ja, wie ändert man dieses (sinnvoll)?

Würde mich freuen wenn Du mich über diese Log Files Sache noch etwas aufklären könntest.

schönen Abend noch...
bis dann, Steinspiel

Benutzeravatar
udo1toni
Beiträge: 13854
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: wie Rule nur 1x ausführen ?

Beitrag von udo1toni »

Es handelt sich um die Karaf Konsole. Übrigens sollte der Befehl

Code: Alles auswählen

openhab-cli console
exakt die gleiche Wirkung haben (allerdings muss man das Passwort nicht eingeben...) Probiere es mal aus...
Die Karaf Konsole bietet (leider nicht vollständig, aber zumindest, was die Befehle betrifft) Autoergänzung, wenn Du log:<tab> drückst, bekommst Du alls Befehle, die das Logging betreffen, gelistet. Darunter z.B. den Befehl log:set. Wenn Du den ohne irgendwas abschickst, beschwert sich openHAB, dass das da Parameter fehlen und erläutert auch gleich, was da hingehört (level). mit help log:set bekommst Du noch mehr Informationen.

Was die Konsole leider nicht automatisch ergänzen kann, ist der Pfad für den Logger, den muss man kennen, bzw. anderweitig in Erfahrung bringen. (je nachdem, z.B. mit feature:info script<tab> bekommt man eine kurze Liste, in der auch esh-model-script (Versionen vor dem Remerge eclipse<->openhab) bzw. openhab-core-model-script (nach dem Remerge) auftauchen. ein weiteres <tab> wählt auch gleich den ersten Eintrag aus und man bekommt mit <enter> auch gleich gesammelte Informationen, beispielsweise den genauen Pfad für den Logger (org.eclipse.smarthome.model.script bzw. org.openhab.core.model.script). Der eigene Logger wird dann in der Hierarchie hinten dran gehängt. Auf der höheren Hierarchie ist gewöhnlich INFO als Level gesetzt, so dass alle Ebenen unterhalb dieses Loglevel erben, solange man nicht gezielt das Level setzt.

Die Konsole bietet noch viele andere Möglichkeiten, beispielsweise gezielt ein einzelnes Bundle zu stoppen oder wieder zu starten (oder beides hintereinander, also ein Restart) oder es gar zu (de-)installieren.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

Re: wie Rule nur 1x ausführen ?

Beitrag von Steinspiel »

Moin,
udo1toni hat geschrieben: 18. Jan 2020 23:10 Es handelt sich um die Karaf Konsole. Übrigens sollte der Befehl

Code: Alles auswählen

openhab-cli console
exakt die gleiche Wirkung haben (allerdings muss man das Passwort nicht eingeben...) Probiere es mal aus...
[...]
Ich weiß nicht ob ich das falsch verstanden habe, aber ich musste das PWD eingeben, ist IMO aber auch egal...!

Bild

Den Rest vom Text lese ich mir noch ein paar mal sehr langsam durch..., sollte ich den passenden Befehl nicht finden, melde ich mich auf jeden Fall wieder...;-))
Danke und einen schönen Abend noch
bis dann, Steinspiel

Benutzeravatar
peter-pan
Beiträge: 2564
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: wie Rule nur 1x ausführen ?

Beitrag von peter-pan »

...also Udo hat dir das ja genau erklärt. Egal, ob du "ssh openhab@localhost -p 8101" oder "openhab-cli console" eingibst, du landest dann in der Karaf-Console. Ich denke mal das ist so was wie eine spezielle Steuerung von OH. Da kann Udo bestimmt mehr dazu sagen. Ich bin auf dem Gebiet ein Dummy, ich weiss nur das es sie gibt und das man damit auch Einstellungen für OH vornehmen kann.

Bis vor kurzem musste ich, wie Udo das beschrieben hat, kein Password eingeben, wenn ich diese Console ber "openhab-cli console" gestartet habe, leider muss ich das mittlerweile auch tun, weiß aber nicht warum ??? Aber egal.

Wenn du in dieser Konsole bist, kannst du auch das Loggingverhalten steuern und zwar mit dem Befehl "log:set". Udo hat dir ja schon beschrieben, wie man sich an das Ganze heran tasten kann.

Nur als kleiner Exkurs! Wenn du "log:list" eingibst, bekommst du alle Logger angelistet. Wenn du danach das Pipe Symbol und zusätzlich noch den Unix/Linux-Befehl "grep -i <pattern>" anhängst, wird die Ausgabe (stdout) gefiltert und du siehst nur, das was mit diesem "Pattern" gefiltert wurde. (Hört sich gut an ;) ). Ich hab keine Ahnung von Linux, aber vom "Learning by Listening and Doing" hab ich da bisschen was inzwischen mitbekommen, das Meiste übrigens von Udo.

Bist du sicher, das dein OH-Log noch hunderte(tausende) von Logs täglich ausgibt, obwohl dein "smarthome.event" auf "WARN" steht ?! Da sag ich einfach mal, das kann nicht sein!!!

Welche openHAB-Version hast du denn am laufen ? Mach vielleicht auch gleich mal ein Kopie von deinem "log:list" und poste es als Code-Schnipsel.

Also ich habe gerade bei mir geschaut. Ich habe ungefähr 110 Logs pro Tag und davon sind ca. 80-90 Zeilen aus Infos von Rules.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.1 openhabian

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: wie Rule nur 1x ausführen ?

Beitrag von PeterA »

Jetzt würde ich auch gerne noch was hierzu wissen:

Wenn ich das HabPanel aufrufe kommt im Log immer:

Code: Alles auswählen

2020-01-17 20:32:16.459 [INFO ] [panel.internal.HABPanelDashboardTile] - Stopped HABPanel

2020-01-17 20:32:16.559 [INFO ] [panel.internal.HABPanelDashboardTile] - Started HABPanel at /habpanel
usw.

Kann ich diese Meldung auch abschalten ?

in der Karaf kommt leider mit "log:list" nichts was dazu passen könnte um es auf z.b WARN zu setzen.

Code: Alles auswählen

openhab> log:list
Logger                                             │ Level
───────────────────────────────────────────────────┼──────
ROOT                                               │ WARN
javax.jmdns                                        │ ERROR
org.apache.karaf.jaas.modules.audit                │ INFO
org.apache.karaf.kar.internal.KarServiceImpl       │ ERROR
org.apache.karaf.shell.support                     │ OFF
org.apache.sshd                                    │ WARN
org.eclipse.jetty.util.thread.ThreadPoolBudget     │ ERROR
org.eclipse.smarthome                              │ WARN
org.jupnp                                          │ ERROR
org.openhab                                        │ INFO
org.ops4j.pax.url.mvn.internal.AetherBasedResolver │ ERROR
org.ops4j.pax.web.pax-web-runtime                  │ OFF
smarthome.event                                    │ WARN
smarthome.event.InboxUpdatedEvent                  │ ERROR
smarthome.event.ItemAddedEvent                     │ ERROR
smarthome.event.ItemRemovedEvent                   │ ERROR
smarthome.event.ItemStateEvent                     │ ERROR
smarthome.event.ThingAddedEvent                    │ ERROR
smarthome.event.ThingRemovedEvent                  │ ERROR
smarthome.event.ThingStatusInfoEvent               │ ERROR
- OpenHab 2.4
#PWRUP

Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

Re: wie Rule nur 1x ausführen ?

Beitrag von Steinspiel »

Moin,
peter-pan hat geschrieben: 19. Jan 2020 01:34 [...]
Nur als kleiner Exkurs! Wenn du "log:list" eingibst, bekommst du alle Logger angelistet.
[...]
Danke für den kleinen Exkurs! Ich musste zwar ziemlich umherschweifen um ein bischen was über Linux Befehle zu lesen und mich durch die Bedienung der Konsole zu wursteln, Aber: mit "log:set" konnte ich die Level der Logfiles umstellen und habe das auch gleich im OH Logviewer Browserfenster gesehen. Nicht schlecht! Wenn ich nachher an die Konfiguration meiner LED gehe schalte ich auf INFO ansonsten schone ich halt meine SD Karte! ;-)
peter-pan hat geschrieben: 19. Jan 2020 01:34 [...]
Bist du sicher, das dein OH-Log noch hunderte(tausende) von Logs täglich ausgibt, obwohl dein "smarthome.event" auf "WARN" steht ?! Da sag ich einfach mal, das kann nicht sein!!!
Da muss ich mich missverständlich ausgedrückt haben. Die Aktivierung von ZRAM hat (wie ich jetzt weiß) dazu geführt das meine "smarthome.***" Logs alle auf ERROR stehen, nur "smarthome.event" ist auf WARN. Ist also alles bestens hier! ;-)

In diesem Zusammenhang:arbeitet ihr alle per SSH in Openhab? Oder anders herum: mein openHAB läuft ja auf einem Raspberry, kann man da nicht nachträglich einen Linux Desktop installieren? Muss ja nichts schickes sein, vielleicht nur um einfacher durch die Dateistruktur zu navigieren...

schönen Restsonntag noch...
bis dann, Steinspiel

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: wie Rule nur 1x ausführen ?

Beitrag von PeterA »

Also SHH ist um auf die Konsole des Raspi zu kommen.
Außerdem sollte auch ein Samba Server auf dem Raspi laufen der Zugriff auf die Ordner gewährt.
Eigentlich ist nur eine Freigabe wichtig: Openhab-conf
Hier sind alle Ordner freigegeben die wichtig sind.
Es sind also quasi Netzlaufwerke....
- OpenHab 2.4
#PWRUP

Antworten