Logging schaltbar in Sitemap?

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

dreamar
Beiträge: 74
Registriert: 22. Dez 2017 08:41
Answers: 0

Logging schaltbar in Sitemap?

Beitrag von dreamar »

Hallo,

mich würde mal interessieren ob es möglich ist das logging über einen Schalter in der Sitemap ein- oder auszuschalten. Solange alles läuft möchte ich es ausschalten und wenn ich bastel möchte ich es einschalten.
von PeterA » 12. Feb 2020 20:14
So hab ich das umgesetzt:

je ein Script für Logging INFO und WARN

karaflog-to-info.sh:

Code: Alles auswählen

#!/bin/bash
sshpass -p habopen ssh -tt -p 8101 -o StrictHostKeyChecking=no openhab@localhost log:set INFO org.eclipse.smarthome
sshpass -p habopen ssh -tt -p 8101 -o StrictHostKeyChecking=no openhab@localhost log:set INFO smarthome.event
karaflog-to-warn.sh:

Code: Alles auswählen

#!/bin/bash
sshpass -p habopen ssh -tt -p 8101 -o StrictHostKeyChecking=no openhab@localhost log:set WARN org.eclipse.smarthome
sshpass -p habopen ssh -tt -p 8101 -o StrictHostKeyChecking=no openhab@localhost log:set WARN smarthome.event
beide scripts mit

Code: Alles auswählen

chmod 775
ausfürbar machen

exec.things:

Code: Alles auswählen

Thing exec:command:logsetinfo [command="/etc/openhab2/scripts/./karaflog-to-info.sh", interval=0, timeout=5,autorun=false] //Karaf Log:Set INFO
Thing exec:command:logsetwarn [command="/etc/openhab2/scripts/./karaflog-to-warn.sh", interval=0, timeout=5,autorun=false] //Karaf Log:Set WARN
exec.items:

Code: Alles auswählen

Switch     LogsetINFO              "Logset to INFO"                                 <switch>  {channel="exec:command:logsetinfo:run"}
DateTime   LogsetINFOLastexecution "Ausgeführt:   [%1$tA, %1$td.%1$tm.%1$tY %1$tT]" <time>    {channel="exec:command:logsetinfo:lastexecution"}
Switch     LogsetWARN              "Logset to WARN"                                 <switch>  {channel="exec:command:logsetwarn:run"}
DateTime   LogsetWARNLastexecution "Ausgeführt:   [%1$tA, %1$td.%1$tm.%1$tY %1$tT]" <time>    {channel="exec:command:logsetwarn:lastexecution"}
und die sitemap:

Code: Alles auswählen

Switch item=LogsetINFO label="Logset to INFO"
        Default item=LogsetINFOLastexecution label="Ausgeführt:"
        Switch item=LogsetWARN label="Logset to WARN"
        Default item=LogsetWARNLastexecution label="Ausgeführt:"
Viel Spass damit!

Und Danke Udo!
Gehe zur vollständigen Antwort
Openhab 2.5.10 mit deconz und Homematic

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

Re: Logging schaltbar in Sitemap?

Beitrag von PeterA »

Meines Wissens nicht. Diese Idee hatte ich auch schon mal
- OpenHab 2.4
#PWRUP

dreamar
Beiträge: 74
Registriert: 22. Dez 2017 08:41
Answers: 0

Re: Logging schaltbar in Sitemap?

Beitrag von dreamar »

Könnte man den nicht ein Script ausführen lassen durch einen Schalter, welches die jeweils vorbereitete Datei von einem speicherOrt in den Config-Ordner kopiert und überschreibt? Nur leider habe ich da keine Ahnung von. Wenn jemand das kann kann wäre Ich sehr dankbar.
Openhab 2.5.10 mit deconz und Homematic

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

Re: Logging schaltbar in Sitemap?

Beitrag von udo1toni »

Es ist kein Problem, das Logging mit der Karaf Konsole zu beeinflussen. Man muss nur im Script die passenden Befehle absetzen. Auf die Schnelle bei StackOverflow gefunden:

Code: Alles auswählen

sshpass -p karaf ssh -tt -p 8101 -o StrictHostKeyChecking=no karaf@localhost feature:install odl-l2switch-switch-ui
In diesem Fall wird also mit dem User karaf (karaf@localhost) auf dem lokalen Rechner (@localhost) in die Karaf Konsole eingeloggt, und zwar mit dem Passwort karaf (sshpass -p karaf), anschließend wird der Befehl feature:install odl-l2switch-switch-ui abgesetzt. In ähnlicher Form sollte das auch für openHAB funktionieren.

Code: Alles auswählen

sshpass -p habopen ssh -tt -p 8101 -o StrictHostKeyChecking=no openhab@localhost log:set WARN org.openhab.model.script.test
Ich habe das aber bisher nicht selbst ausprobiert, ist also graue Theorie.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

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

Re: Logging schaltbar in Sitemap?

Beitrag von PeterA »

Hi Udo,

sshpass funktioniert nicht auf meinem Raspi (Openhabian). Der Befehl sshpass wird nicht gefunden.

EDIT:

sudo apt-get install sshpass

Dann Funktionierts!

Danke Udo für den Tipp!!!
- OpenHab 2.4
#PWRUP

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

Re: Logging schaltbar in Sitemap?

Beitrag von PeterA »

So hab ich das umgesetzt:

je ein Script für Logging INFO und WARN

karaflog-to-info.sh:

Code: Alles auswählen

#!/bin/bash
sshpass -p habopen ssh -tt -p 8101 -o StrictHostKeyChecking=no openhab@localhost log:set INFO org.eclipse.smarthome
sshpass -p habopen ssh -tt -p 8101 -o StrictHostKeyChecking=no openhab@localhost log:set INFO smarthome.event
karaflog-to-warn.sh:

Code: Alles auswählen

#!/bin/bash
sshpass -p habopen ssh -tt -p 8101 -o StrictHostKeyChecking=no openhab@localhost log:set WARN org.eclipse.smarthome
sshpass -p habopen ssh -tt -p 8101 -o StrictHostKeyChecking=no openhab@localhost log:set WARN smarthome.event
beide scripts mit

Code: Alles auswählen

chmod 775
ausfürbar machen

exec.things:

Code: Alles auswählen

Thing exec:command:logsetinfo [command="/etc/openhab2/scripts/./karaflog-to-info.sh", interval=0, timeout=5,autorun=false] //Karaf Log:Set INFO
Thing exec:command:logsetwarn [command="/etc/openhab2/scripts/./karaflog-to-warn.sh", interval=0, timeout=5,autorun=false] //Karaf Log:Set WARN
exec.items:

Code: Alles auswählen

Switch     LogsetINFO              "Logset to INFO"                                 <switch>  {channel="exec:command:logsetinfo:run"}
DateTime   LogsetINFOLastexecution "Ausgeführt:   [%1$tA, %1$td.%1$tm.%1$tY %1$tT]" <time>    {channel="exec:command:logsetinfo:lastexecution"}
Switch     LogsetWARN              "Logset to WARN"                                 <switch>  {channel="exec:command:logsetwarn:run"}
DateTime   LogsetWARNLastexecution "Ausgeführt:   [%1$tA, %1$td.%1$tm.%1$tY %1$tT]" <time>    {channel="exec:command:logsetwarn:lastexecution"}
und die sitemap:

Code: Alles auswählen

Switch item=LogsetINFO label="Logset to INFO"
        Default item=LogsetINFOLastexecution label="Ausgeführt:"
        Switch item=LogsetWARN label="Logset to WARN"
        Default item=LogsetWARNLastexecution label="Ausgeführt:"
Viel Spass damit!

Und Danke Udo!
- OpenHab 2.4
#PWRUP

dreamar
Beiträge: 74
Registriert: 22. Dez 2017 08:41
Answers: 0

Re: Logging schaltbar in Sitemap?

Beitrag von dreamar »

Hallo PeterA,

tausend Dank an dich für die Umsetzung. :D
Openhab 2.5.10 mit deconz und Homematic

mokkinger
Beiträge: 5
Registriert: 23. Okt 2019 21:10
Answers: 0

Re: Logging schaltbar in Sitemap?

Beitrag von mokkinger »

Super Steuerung, vielen Dank!

leider bekomm ich sie noch nicht ganz zum laufen:

Code: Alles auswählen

2020-05-05 08:55:18.219 [ome.event.ItemCommandEvent] - Item 'LogsetINFO' received command ON

2020-05-05 08:55:18.231 [nt.ItemStatePredictedEvent] - LogsetINFO predicted to become NULL


sshpass ist installiert, die beiden scripts liegen in /etc/openhab2/scripts/ und sind ausführbar. in der sitemap erscheint beim umschalten auch kein update des Datum, es bleibt bei -,-.-.--

habt ihr tipps?
Danke & Gruss
Mark

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

Re: Logging schaltbar in Sitemap?

Beitrag von PeterA »

Hi,
hast Du alles so erstellt wie in meiner Anleitung ? Auch die Items usw ?
Exec Binding installiert ?
- OpenHab 2.4
#PWRUP

mokkinger
Beiträge: 5
Registriert: 23. Okt 2019 21:10
Answers: 0

Re: Logging schaltbar in Sitemap?

Beitrag von mokkinger »

Danke dir. Exec Binding wars, ist jetzt installiert, nun erhalte ich noch einen "whitelist" fehler... wo bearbeite ich diese whitelist?

Code: Alles auswählen

[ng.exec.internal.handler.ExecHandler] - Tried to execute '/etc/openhab2/scripts/./karaflog-to-info.sh', but it is not contained in whitelist.
EDIT: habs gefunden, im /misc folder... eintrag in exec.whitelist bringt leider aber nicht den gewünschten effekt. was steht in deinem exec.whitelist file?

Code: Alles auswählen

command="/etc/openhab2/scripts/./karaflog-to-info.sh"
command="/etc/openhab2/scripts/./karaflog-to-warn.sh"

Antworten