Django-Protokollierung auf Heroku

Ich weiß, diese Frage wurde schon mehrmals gefragt, aber ich kann einfach nicht damit es funktioniert. Ich habe bereits den halben Tag damit verbracht zu versuchen Dutzende von Kombinationen, und jetzt wieder und es ist immer noch nicht funktioniert.

In meinem code, ich bin die Protokollierung in mehrere Teile, wie innerhalb eines try-except-oder zu Protokoll einige infos von management-Befehlen. Ich mache nur ganz normales Zeug, dass funktioniert auf mehreren lokalen installiert und auf einigen Nginx-Server.

Einer python-Datei wie diese :

import logging
logger = logging.getLogger(__name__)
logger.info('some important infos')

Mit folgenden minimal settings.py (ich habe versucht, ohne Strom Anzeige, ohne die Holzfäller angegeben, mit dem Namen Logger, der fast alle möglichen Kombinationen und ich habe auch versucht viel mehr komplexe)

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'handlers': {
        'console': {
            'level': 'INFO',
            'class': 'logging.StreamHandler',
            'stream': sys.stdout
        }
    },
    'loggers': {
        'django': {
            'handlers': ['console'],
            'propagate': True,
            'level': 'INFO',
        },
        '': {
            'handlers': ['console'],
            'level': 'INFO',
        }
    }
}

Dann auch einfach getestet von der shell aus heroku run python

import logging
level = logging.INFO
handler = logging.StreamHandler()
handler.setLevel(level)
handler.setFormatter(logging.Formatter('%(levelname)s: %(message)s'))
logger = logging.getLogger('info')
logger.addHandler(handler)
logger.setLevel(level) #even if not required...
logger.info('logging test')

Den letzten kann man zeigen, wie "print" - Anweisung in der Konsole, aber weder hier, noch von dem Befehl oder der server, nichts, nie, zeigt sich in heroku logs....

EDIT: eigentlich habe ich einige Einträge angezeigt, Anwendungs-logs wie folgt, nur nicht von mir:

2013-09-20T15:00:16.405492+00:00 heroku[run.2036]: Process exited with status 0
2013-09-20T15:00:17+00:00 app[heroku-postgres]: source=HEROKU_POSTGRESQL_OLIVE sample[...]
2013-09-20T14:59:47.403049+00:00 heroku[router]: at=info method=GET path=/
2013-09-20T14:59:16.304397+00:00 heroku[web.1]: source=web.1 dyno=heroku [...]

Ich habe auch versucht, suchen Sie nach Einträgen mit mehreren addons. Ich hatte für einen moment am Anfang newrelic, die ich dann auch deaktiviert das WSGI-start-up. Ich kann mich nicht erinnern, ob es damals gut geklappt, die kostenlosen test-Zeitraum von newrelic ist eher kurz.

Gut, ich weiß nicht, was ich versuchen könnte, sonst... vielen Dank für jeden Hinweis

  • wenn ich das log in eine Datei, wie kann ich mir die logs aus der Datei?
InformationsquelleAutor Rmatt | 2013-09-20
Schreibe einen Kommentar