Skip to content

Instantly share code, notes, and snippets.

@daryltucker
Last active April 7, 2025 04:11
Show Gist options
  • Select an option

  • Save daryltucker/e40c59a267ea75db12b1 to your computer and use it in GitHub Desktop.

Select an option

Save daryltucker/e40c59a267ea75db12b1 to your computer and use it in GitHub Desktop.
Really disable logger logging in Flask
# I have my own logging setup and had a hard time disabling console output in Flask.
app.logger.disabled = True
log = logging.getLogger('werkzeug')
log.disabled = True
# New, 2022 Method:
logging.getLogger('werkzeug').disabled = True
@mconigliaro

Copy link
Copy Markdown

For the record, this only disables the logging statements. If you want to disable the console warnings too, you have to monkeypatch the function that does that (see: cs01/gdbgui#425):

import flask.cli    
flask.cli.show_server_banner = lambda *args: None

The old hack (os.environ["WERKZEUG_RUN_MAIN"] = "true") doesn't work in werkzeug >=2.1.0.

@cj-praveen

Copy link
Copy Markdown

@mconigliaro Man! your code works well! Thanks :)

@NefixEstrada

Copy link
Copy Markdown

If using flask-socketio:

logging.getLogger("werkzeug").disabled = True
logging.getLogger("geventwebsocket.handler").disabled = True

@tanjuntao

tanjuntao commented Jun 26, 2023

Copy link
Copy Markdown

Really nice! I'm using Flask 2.2.3, it works.

@miloandrs

miloandrs commented Oct 12, 2023

Copy link
Copy Markdown

Thank you!
This worked perfectly for me.

pasted right below the instantiation line
app = Flask(name)
logging.getLogger('werkzeug').disabled = True

@seetimee

seetimee commented Apr 7, 2025

Copy link
Copy Markdown

thanks a lot

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment