write log since last boot to file

This commit is contained in:
avollkopf 2024-05-02 07:32:38 +02:00
parent 4ca441bba3
commit f5c242d7c8

View file

@ -148,19 +148,25 @@ class SystemController:
if logtime == "b": if logtime == "b":
if systemd_available: if systemd_available:
#os.system('journalctl -b -u craftbeerpi.service --output cat > {}'.format(fullname)) #os.system('journalctl -b -u craftbeerpi.service --output cat > {}'.format(fullname))
j = journal.Reader() b = journal.Reader()
j.add_match(_TRANSPORT="kernel") b.add_match(_TRANSPORT="kernel")
result=[] result=[]
for entry in j: for entry in b:
message=entry['MESSAGE'] message=entry['MESSAGE']
if message.find("Booting") != -1: if message.find("Booting") != -1:
result.append(entry['__REALTIME_TIMESTAMP']) result.append(entry['__REALTIME_TIMESTAMP'])
j = journal.Reader()
j.add_match(_SYSTEMD_UNIT="craftbeerpi.service") j.add_match(_SYSTEMD_UNIT="craftbeerpi.service")
j.seek_realtime(result[-1]) j.seek_realtime(result[-1])
result=[]
for entry in j: for entry in j:
timestamp=entry['__REALTIME_TIMESTAMP'] result.append(entry['MESSAGE'])
message=entry['MESSAGE'] try:
print(message) with open(fullname, 'w') as f:
for line in result:
f.write(f"{line}\n")
except Exception as e:
logging.error(e)
else: else:
if systemd_available: if systemd_available: