Flask logging not working at all Flask logging not working at all flask flask

Flask logging not working at all


Your (debug) logging messages are getting suppressed by Flask as you're not running in debug mode. If you set the following flag to True, your code will work.

    app.run(debug=True)

The messages will now appear as expected.

BennyE$ python3 stackoverflow.py 2015-03-08 12:04:04,650 ERROR: firs test message... [in stackoverflow.py:31] * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit) * Restarting with stat2015-03-08 12:04:04,807 ERROR: firs test message... [in stackoverflow.py:31]--------------------------------------------------------------------------------DEBUG in stackoverflow [stackoverflow.py:11]:second test message...--------------------------------------------------------------------------------2015-03-08 12:04:13,789 DEBUG: second test message... [in stackoverflow.py:11]192.168.178.23 - - [08/Mar/2015 12:04:13] "GET / HTTP/1.1" 200 ---------------------------------------------------------------------------------DEBUG in stackoverflow [stackoverflow.py:11]:second test message...--------------------------------------------------------------------------------2015-03-08 12:04:14,899 DEBUG: second test message... [in stackoverflow.py:11]192.168.178.23 - - [08/Mar/2015 12:04:14] "GET / HTTP/1.1" 200 -

This is the output in the associated output file:

BennyE$ cat output.log 2015-03-08 11:58:22,226 ERROR: firs test message... [in stackoverflow.py:31]2015-03-08 12:04:04,650 ERROR: firs test message... [in stackoverflow.py:31]2015-03-08 12:04:04,807 ERROR: firs test message... [in stackoverflow.py:31]2015-03-08 12:04:13,789 DEBUG: second test message... [in stackoverflow.py:11]2015-03-08 12:04:14,899 DEBUG: second test message... [in stackoverflow.py:11]


I had the same issue and following worked for me:

app.logger.setLevel(logging.INFO)


Thansk BennyE_HH, it works.

But Flask didn't suppressed ERROR level log message even debug mode is disable(default is disable).

I think we should call app.logger.setLevel(logging.DEBUG) to control log level even debug mode is false.