I am working with Python logging package and I need to log two types of messages:
- Messages that should be only logged into standard output
- Messages that should be only logged into a file.
However I cannot achieve it. Here is my code:
import logging
logger = logging.getLogger("file_logger")
fh = logging.FileHandler("tmp.log")
logger.addHandler(fh)
logging.warning("Message for std output")
logging.getLogger("file_logger").warning("Message for file logger")
When I run this script then following messages are printed in terminal:
WARNING:root:Message for std output
WARNING:file_logger:Message for file logger
How can I fix this behavior so "Message for file logger" will be only printed into the file?