7

I need to use python logging module to print debugging info to a file with statements like:

logging.debug(something)

The file is truncated (i am assuming - by the logging module) and the messages get deleted before I can see them - how can that be prevented?

Here is my logging config:

logging.basicConfig(
    level = logging.DEBUG,
    format = '%(asctime)s %(levelname)s %(message)s',
    filename = '/tmp/my-log.txt',
    filemode = 'w'
)

Thanks!

1 Answer 1

13

logging

If you run the script repeatedly, the additional log messages are appended to the file. To create a new file each time, you can pass a filemode argument to basicConfig() with a value of 'w'. Rather than managing the file size yourself, though, it is simpler to use a RotatingFileHandler.

To prevent overwriting the file, you should not set filemode to 'w', or set it to 'a' (that is the default setting anyway).

I believe that you are simply overwriting the file.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.