Logs, logging. What it is and how to register events with Python
Creating logs using logging allows us a lot of functionality and flexibility in the code. In this short article I show you the basics and a little more to start incorporating it into your projects.
Logging is a way to monitor events. These events are visible through a descriptive message, with certain variable information (the value of some variable or the result of a function) and with a certain level of importance.
A log is like a print in Python, but the difference is that they are not necessarily printed on the screen and these logs can be saved in a known file.
We will use the logging library, which already comes natively in Python:
import logging logging.basicConfig( filename="log-de-hoy.log", encoding="utf-8", level=logging.DEBUG, format="%(asctime)s %(levelname)s %(message)s" ) def add(a, b): try: result = a b logging.info(f"Adding {a} and {b}. Result: {result}") except TypeError: result = None logging.error("The values should be numeric") return result print(add(2, 3)) # 5 print(add(2, "3")) # None
If we execute this, a file called log-de-hoy.log is generated:
2023-12-08 11:56:30,544 INFO Adding 2 and 3. Result: 5 2023-12-08 11:56:30,544 ERROR The values should be numeric
?? We start basic configuration: with logging.basicConfig we declare:
?? We record the result of the sum with level info
?? We register the error of adding an int and a string with level error
Perhaps you can already imagine it, since it is a powerful tool that will help us quickly identify anomalies. Some of the use cases to use it are:
It's easy to implement, right? Is it a plus to integrate it into any project and stop using so many prints?.
The logging module offers much more than the little I showed here. But this little is more than enough! If necessary, the documentation explains other cases, methods, configs and so on quite well.
Disclaimer: All resources provided are partly from the Internet. If there is any infringement of your copyright or other rights and interests, please explain the detailed reasons and provide proof of copyright or rights and interests and then send it to the email: [email protected] We will handle it for you as soon as possible.
Copyright© 2022 湘ICP备2022001581号-3