Moin,
bisher habe ich für alle Probleme eine Lösung gefunden. Bei der Problematik komme ich jedoch leider nicht weiter. Ich weiß auch nicht wonach ich suchen soll um eine Lösung zu finden.
Problematik:
Mein Pythonscript startet automatisch nach Systemstart jedoch loggt das logging_modul nicht in die von mir vorgesehene Logdatei.
Weder beim autostart über einen Eintrag in /etc/rc.local noch über die Variante /etc/init.d/beispiel
System:
Raspberry Pi Zero Rev. 1.1
Raspbian GNU / Linux 10 (buster)
python 3.7
Ich habe schon herausgefunden das ich die Fehler über journalctl finden kann.
Ich finde das aber ziemlich umständlich.
Logging HOWTO — Python 3.9.7 documentation
Habe ich mir auch schon komplett durchgelesen und anhand dessen ein Beispiel erstellt, welches über den Terminalaufruf funktioniert aber nicht beim Aufruf über die genannten autostart Varianten.
Ich vermute das ich etwas am logging.handler ändern muss ich weiß aber nicht was.
Wenn ich das handler-Beispiel aus dem link probiere funktioniert das Script nicht und ich bekomme die Fehlermeldung:
Traceback (most recent call last): File "/home/pi/s-boxlibary/trylog/trylog.py", line 4, in <module>
logging.config.fileConfig('logging.conf') File "/usr/lib/python3.7/logging/config.py", line 71, in fileConfig
formatters = _create_formatters(cp) File "/usr/lib/python3.7/logging/config.py", line 104, in _create_formatters
flist = cp["formatters"]["keys"] File "/usr/lib/python3.7/configparser.py", line 958, in __getitem__
raise KeyError(key) KeyError: 'formatters'
Das einfache Codebeispiel :
(Wirft keinen Fehler aber schreibt nicht in meine Datei)
#!/usr/bin/python3
import logging
logging.basicConfig(filename='try.log', format='%(levelname)s:%(asctime)s:%(funcName)s:%(message)s', filemode='w', level=logging.INFO)
# Beispiel:
warninglog = 'außerhalb main'
logging.warning(warninglog)
Vielen Dank schonmal im voraus.