Seite 1 von 1

OpenHab2 - Logfiles

Verfasst: 26. Dez 2022 12:53
von andy2912
Hallo,
Ich benutze seit gut 1 Jahr openhab2. Seit einigen Wochen laufen die Logfiles openhab.log und events.log nur noch ca. 4-5 Minuten. Nach Neustart des System wird auch nur noch ca. 5 Minuten geloggt, die logfiles wurden von Tag zu Tag immer kürzer. Was ich auch nicht verstehe, dass er vor dem Neustart ein logfile vom November anzeigt. Ich habe versucht, die logfiles inn /var/log/openhab2 zu löschen, allerdings kam da die Meldung "rm: cannot remove 'events.log.1': Read-only file system". Kann man die logfiles so eintellen, dass sie z.B. alle Stunde resettet (gelöscht) werden und dann neu starten? Falls ja, wie?

Wie immer vielen Danke im Voraus.

VG Andreas

Re: OpenHab2 - Logfiles

Verfasst: 26. Dez 2022 22:16
von udo1toni
Nun ja, da hast Du quasi schon das Problem gefunden... Wenn Dein Dateisystem read only ist, deutet das auf ein schwerwiegendes Problem hin.

Wenn ich fragen darf: Warum hast Du überhaupt ein openHAB2 System aufgesetzt? vor einem Jahr war openHAB2 schon ein Jahr Vergangenheit.

Dein Problem hat aber nichts mit der Version von openHAB zu tun :) das ist ein Problem des Betriebssystems.
Zu Eingrenzung: Kannst Du bitte mal schauen, was die Befehle df -h und du -hs /var/log/* ergeben? Ersterer Befehl verrät die Dateisystemnutzung pro Device, Letzterer verrät die Größe des Ordners /var/log/
Was ergibt der Befehl mount?
Ergebnisse bitte als Code markiert hier einfügen.

Wie hast Du das System aufgesetzt? Um welche Plattform handelt es sich (Pi3/4, wieviel RAM usw.?
Da eine der möglichen Ursachen ein defekter Speicher ist: Hast Du eine Ersatz-(Micro)-SD-Karte da? Hast Du ein aktuelles Backup?
Da Dein System nicht auf aktuellem Stand ist: Welche exakte Version betreibst Du? OH2.x.y? OS?

Re: OpenHab2 - Logfiles

Verfasst: 27. Dez 2022 17:12
von andy2912
Hallo Udo,
Vielen Dank schon mal, dass du so schnell reagierst :D
Nun ja, da hast Du quasi schon das Problem gefunden... Wenn Dein Dateisystem read only ist, deutet das auf ein schwerwiegendes Problem hin.
Ja das verwundert mich auch. Habe deswegen schon mal ein Backup/Restore auf einer anderen CF gemacht, hat aber nichts gebracht.
Warum hast Du überhaupt ein openHAB2 System aufgesetzt?
Ist doch schon etwas länger wie 1 Jahr her und ich dachte, ich setze erstmal mal auf ein bewährtes System. Will irgendwann auf OH 3.x umswitchen, scheue mich im Moment aber vor der größeren zeitintensiven Umstellung.
Kannst Du bitte mal schauen, was die Befehle df -h und du -hs /var/log/* ergeben?

Code: Alles auswählen

Filesystem      Size  Used Avail Use% Mounted on
/dev/root        15G  8.4G  5.4G  61% /
devtmpfs        800M     0  800M   0% /dev
tmpfs           961M     0  961M   0% /dev/shm
tmpfs           961M  1.5M  960M   1% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           961M     0  961M   0% /sys/fs/cgroup
overlay2        469M   56M  379M  13% /var/lib/openhab2/persistence
overlay1        469M  305M  130M  71% /var/log
/dev/mmcblk0p1  253M   50M  203M  20% /boot
/dev/zram1      469M  305M  130M  71% /opt/zram/zram1
/dev/zram2      469M   56M  379M  13% /opt/zram/zram2
tmpfs           193M     0  193M   0% /run/user/1000

Code: Alles auswählen

openhabian@AndysOpenHAB:~ $ du -hs /var/log/*
0	/var/log/alternatives.log
4.0K	/var/log/alternatives.log.1
4.0K	/var/log/alternatives.log.2.gz
4.0K	/var/log/alternatives.log.3.gz
4.0K	/var/log/alternatives.log.4.gz
4.0K	/var/log/alternatives.log.5.gz
4.0K	/var/log/alternatives.log.6.gz
168K	/var/log/apt
1.1M	/var/log/auth.log
804K	/var/log/auth.log.1
16K	/var/log/auth.log.2.gz
16K	/var/log/auth.log.3.gz
16K	/var/log/auth.log.4.gz
1.2M	/var/log/boot.log
0	/var/log/bootstrap.log
0	/var/log/btmp
0	/var/log/btmp.1
76K	/var/log/cups
259M	/var/log/daemon.log
229M	/var/log/daemon.log.1
2.0M	/var/log/daemon.log.2.gz
1.1M	/var/log/daemon.log.3.gz
1.1M	/var/log/daemon.log.4.gz
100K	/var/log/debug
44K	/var/log/debug.1
4.0K	/var/log/debug.2.gz
4.0K	/var/log/debug.3.gz
4.0K	/var/log/debug.4.gz
0	/var/log/dpkg.log
28K	/var/log/dpkg.log.1
24K	/var/log/dpkg.log.2.gz
8.0K	/var/log/dpkg.log.3.gz
4.0K	/var/log/dpkg.log.4.gz
4.0K	/var/log/dpkg.log.5.gz
8.0K	/var/log/dpkg.log.6.gz
4.0K	/var/log/dpkg.log.7.gz
4.0K	/var/log/dpkg.log.8.gz
8.0K	/var/log/dpkg.log.9.gz
24K	/var/log/faillog
4.0K	/var/log/fontconfig.log
612K	/var/log/grafana
8.0K	/var/log/hp
4.0K	/var/log/influxdb
69M	/var/log/journal
224K	/var/log/kern.log
116K	/var/log/kern.log.1
4.0K	/var/log/kern.log.2.gz
4.0K	/var/log/kern.log.3.gz
4.0K	/var/log/kern.log.4.gz
292K	/var/log/lastlog
du: cannot read directory '/var/log/lightdm': Permission denied
4.0K	/var/log/lightdm
272K	/var/log/messages
152K	/var/log/messages.1
4.0K	/var/log/messages.2.gz
4.0K	/var/log/messages.3.gz
4.0K	/var/log/messages.4.gz
66M	/var/log/openhab2
du: cannot read directory '/var/log/private': Permission denied
4.0K	/var/log/private
du: cannot read directory '/var/log/samba': Permission denied
8.0K	/var/log/samba
31M	/var/log/syslog
460K	/var/log/syslog.1.gz
112K	/var/log/syslog.2.gz
396K	/var/log/syslog.3.gz
348K	/var/log/syslog.4.gz
216K	/var/log/syslog.5.gz
636K	/var/log/syslog.6.gz
452K	/var/log/syslog.7.gz
4.0K	/var/log/sysstat
du: cannot read directory '/var/log/unattended-upgrades': Permission denied
4.0K	/var/log/unattended-upgrades
136K	/var/log/user.log
48K	/var/log/user.log.1
4.0K	/var/log/user.log.2.gz
4.0K	/var/log/user.log.3.gz
4.0K	/var/log/user.log.4.gz
396K	/var/log/wtmp
8.0K	/var/log/Xorg.0.log
8.0K	/var/log/Xorg.0.log.old
284K	/var/log/xrdp.log
152K	/var/log/xrdp-sesman.log

Code: Alles auswählen

openhabian@AndysOpenHAB:~ $ mount
/dev/mmcblk0p2 on / type ext4 (rw,noatime)
devtmpfs on /dev type devtmpfs (rw,relatime,size=819056k,nr_inodes=88504,mode=755)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,relatime)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup2 on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,name=systemd)
none on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=31,pgrp=1,timeout=0,minproto=5,maxproto=5,direct)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
mqueue on /dev/mqueue type mqueue (rw,relatime)
sunrpc on /run/rpc_pipefs type rpc_pipefs (rw,relatime)
configfs on /sys/kernel/config type configfs (rw,relatime)
tmpfs on /var/lib/openhab2/persistence/mapdb type tmpfs (rw,nosuid,relatime,size=256000k)
tmpfs on /var/log/openhab2 type tmpfs (rw,nosuid,relatime,size=256000k)
tmpfs on /var/lib/openhab2/persistence/rrd4j type tmpfs (rw,nosuid,relatime,size=256000k)
/dev/mmcblk0p1 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro)
/dev/mmcblk0p2 on /opt/zram/log.bind type ext4 (rw,noatime)
/dev/zram1 on /opt/zram/zram1 type ext4 (ro,noatime)
overlay1 on /var/log type overlay (rw,relatime,lowerdir=/opt/zram/log.bind,upperdir=/opt/zram/zram1/upper,workdir=/opt/zram/zram1/workdir,redirect_dir=on)
/dev/mmcblk0p2 on /opt/zram/persistence.bind type ext4 (rw,noatime)
/dev/zram2 on /opt/zram/zram2 type ext4 (rw,noatime)
overlay2 on /var/lib/openhab2/persistence type overlay (rw,relatime,lowerdir=/opt/zram/persistence.bind,upperdir=/opt/zram/zram2/upper,workdir=/opt/zram/zram2/workdir,redirect_dir=on)
/dev/mmcblk0p2 on /srv/openhab2-userdata type ext4 (rw,noatime)
/dev/mmcblk0p2 on /srv/openhab2-conf type ext4 (rw,noatime)
/dev/mmcblk0p2 on /srv/openhab2-addons type ext4 (rw,noatime)
/dev/mmcblk0p2 on /srv/openhab2-sys type ext4 (rw,noatime)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=196784k,mode=700,uid=1000,gid=115)
Wie hast Du das System aufgesetzt?
Habe RPI 4 mit 4 Gbyte RAM
Openhabian, Openhab 2.5.12 (habe auch da erst kürzlich das ganze System über opennhabian-config upgedatet)

Re: OpenHab2 - Logfiles

Verfasst: 28. Dez 2022 00:07
von udo1toni
Hmm... erst mal sieht das unauffällig aus.
Mount: Das hier

Code: Alles auswählen

/dev/mmcblk0p2 on / type ext4 (rw,noatime)
Ist die SD-Karte, die offensichtlich read/write eingehängt ist.
Das hier

Code: Alles auswählen

overlay1 on /var/log type overlay (rw,relatime,lowerdir=/opt/zram/log.bind,upperdir=/opt/zram/zram1/upper,workdir=/opt/zram/zram1/workdir,redirect_dir=on)
ist das Log-Verzeichnis, welches in einem zram Overlay liegt. ZRAM verhindert, dass ständig auf die SD-Karte geschrieben wird und verhindert damit Wearout.

Interessanterweise ist aber

Code: Alles auswählen

/dev/zram1 on /opt/zram/zram1 type ext4 (ro,noatime)
genau dieses Device ro gemountet. Ich habe hier openHAB nicht auf einem Raspberry laufen und keinerlei Erfahrung mit ZRAM, aber da das zweite ZRAM Device drei Zeilen tiefer rw gemountet ist, spricht für mich einiges dafür, dass hier die Ursache zu suchen ist.

Grundsätzlich musst Du zunächst herausfinden, wie Du /dev/zram1 wieder rw mounten kannst. Eventuell funktioniert es ganz normal mit

Code: Alles auswählen

sudo mount -o remount,rw /dev/zram1 /opt/zram/zram1
Sollte das klappen, wäre es wichtig, ein wenig Ordnung zu schaffen. gewöhnlich kannst Du alle Dateien mit der Endung .gz unbesehen löschen (das sind ganz alte Log Dateien, die archiviert und gepackt wurden), des weiteren kannst Du vermutlich alle Dateien mit einer Ziffer als Endung entfernen (es sei denn, Du suchst aktuell nach anderen Fehlern, dann könnten diese Logs eventuell wichtig sein)

Achte unbedingt auch auf ide Unterverzeichnisse, und zwar auch die, zu welchen Du als normaler User keinen Zutritt hast. Verschaffe Dir erweiterte Rechte mittels sudo su -, aber Achtung! Wer Gott spielt, sollte extrem darauf achten, keine Fehler zu machen!
Das Journal ist mit 69 MByte ein dicker Brocken, das solltest Du aber nicht anfassen (zumal es ohnehin vom System die ganze Zeit über verwendet wird).

Wenn die Probleme nach einem Neustart noch vorhanden sind, gibt es weitere Optionen: 1. Du schaltest ZRAM vorerst komplett ab (geht über openhabian-config). 2. Anschließend bootest Du neu. 3. Nachdem Du sichergestellt hast, das ZRAM tatsächlich nicht aktiv ist (Schau einfach mit mount, ob zram als device auftaucht), gehst Du nochmals in den Ordner /var/log/ und putzt nochmal (denn vermutlich hängen die gelöschten Dateien wieder drin).
Abschließend richtest Du ZRAM erneut ein.
Alternativ könntest Du die SD-Karte auch entfernen und in einem anderen GNU/Linux System zusätzlich einbinden, um dort das Verzeichnis gezielt zu säubern. Das ist aber vermutlich nicht der schnellere Weg, es sei denn, Du hast ohnehin schon ein fertiges GNU/Linux am Start, in dem Du die SD-Karte nur mounten musst.

Re: OpenHab2 - Logfiles

Verfasst: 31. Dez 2022 12:15
von andy2912
Hallo Udo,
Vielen lieben Dank für deine Bemühungen, finde eure Forumsarbeit echt toll. Das hat mir schon einige Male weitergeholfen.

ZRAM konnte ich nicht remounten -> wegen write protection. Habe ZRAM deaktiviert (Uninstall ZRAM) und dann all "unnötigen" Logfiles gelöscht, wei von dir vorgeschlagen. Danach wollte ich ZRAM wieder aktivieren (USE ZRAM) und bekomme Fehlermeldung:
Bildschirm­foto 2022-12-31 um 11.55.32.png
Vermute, dass mit dem ZRAM was nicht passt...

Gut, aber ich hatte eh vor alles wichtige auf einem USB Stick zu speichern, bin aber leider nicht so fit mit Linux.

Ich würde gerne alle persitance Daten, Influx und natürlich die log-Files auf dem USB-Stick speichern und eventuell täglich auch ein System backup ablegen. Sollte das OS abstürzen, hätte ich zumindest ein backup aller Daten und müsste nur die SD neu aufsetzen.

Was müsste ich dazu alles machen?

Danke vorab

Re: OpenHab2 - Logfiles

Verfasst: 31. Dez 2022 20:37
von udo1toni
Für openHAB seslbst reicht es, openhab-cli backup auszuführen. Das entstehende zip Archiv liegt dann in $OPENHAB_USERDATA/backup/ und enthält die interne Persistence, also rrd4j und mapdb, nicht aber InfluxDB Daten oder auch MariaDB,

Ein System Backup ist in meinen Augen überbewertet, wenn, wäre hier der Weg, die SD-Karte zu sichern oder zu klonen - aber nach dem Klonen immer den Klon weiterverwenden, nicht das Original, so stellst Du sicher, dass der Klon auch tatsächlich funktioniert. Vom Original weißt Du es...

Die InfluxDB zu sichern ist nicht weiter schwer, das Restore ist das schon eher eine Herausforderung. Insofern ist der Backup Weg schon eine bequeme Variante, aber eben nicht ohne Datenverluste, weil das Backup nun mal nur den Stand vor dem Backup enthält.

Der genaue Weg für InfluxDB ist hier beschrieben: https://docs.influxdata.com/influxdb/v1 ... d_restore/ Es sollte kein großes Problem sein, den Backup Vorgang zu automatisieren.