logging ausgaben in django apps...

Django, Flask, Bottle, WSGI, CGI…
Antworten
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Ich hab in django-weave bei dem entwickeln einfach mal das im view.py gemacht:

Code: Alles auswählen

import logging
logging.basicConfig(level=logging.DEBUG)

def foo_view(request):
    logging.debug("blabla")
Nun ist es so weit, das man django-weave releasen kann, weil es funktioniert. Da frage ich mich doch, wie soll man das logging in der endversion handhaben?

Der Admin sollte selber bestimmen könne, was wie wo geloggt werden soll.
Also einfach "logging.basicConfig(level=logging.DEBUG)" auskommentieren und gut? Der Admin kann dann in seiner settings.py das einstellen, wie er will?

Nett ist ja eigentlich auch, das man mit logging.getLogger() einen "eigenen" logger erstellen kann. So könnte jede django app einen eigenen logger erstellen und nutzten. Aber wie?

Kennt jemand eine "Best Practice" Anleitung dazu?

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Logging in jeder Datei (in deinem Fall wohl für views) zu konfigurieren (und dann ggf. auszukommentieren) ist IMHO keine gute Idee. Bei Django kann man es denke ich in den settings definieren, weil dort auch alles andere in Python konfiguriert wird. Oder man nutzt die Möglichkeit, eine Logging-Konfigurationsdatei zu benutzen. Pythons logging wurde ja offenbar nach dem Vorbild von log4j entwickelt und dort wäre der Ansatz mit einer Konfigurationsdatei der Standard.

Wichtig fände ich noch, verschiedene Logger je nach Aspekt zu benutzen. Also nicht immer nur den Root-Logger, sondern in einem View z.B. einen eigenen Logger, damit man ggf. nur Modelle für die Benutzerverwaltung, aber keine Views loggen kann usw.

Stefan
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Mein Kollege hat sich was von http://pypi.python.org/pypi/django-auth-ldap/ ab geschaut, siehe: http://code.google.com/p/django-weave/s ... etail?r=57

Wobei das nicht nicht wirklich optimal ist.

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Antworten