Hacker News new | past | comments | ask | show | jobs | submit login

I can easily fork output manually; I can't do it reliably using Python's logger.



Echoing grandparent's comment, it's not that hard:

https://docs.python.org/3/library/logging.html#logging.Logge...

For dictConfig, the documentation has examples

https://docs.python.org/3/library/logging.config.html#object...

Python's logging has its faults, but you're complaining about something I could find in 5 minutes of Google.


None of which work reliably across multiple modules all fighting for control of the logger. Reliable is the key term, here.


Don't write code where every module tries to make a root logger or set the logger config then.

Each module should use `logger = logging.getLogger(__name__)` and the logger config can set in one place, conventionally in the `__main__` script.

https://docs.python.org/3/howto/logging.html#advanced-loggin...


true that. but I've never figured out a good way to do this and have a single test runner module log when invoked directly: python3 test_foo.py and indirectly python3 -m unittest test_foo


Eh, it's really not that bad. I implemented this for a tool at work last year and it seemed pretty straightforward.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: