Home > Backend Development > Python Tutorial > Logging con Python

Logging con Python

Linda Hamilton
Release: 2024-10-13 22:12:30
Original
1049 people have browsed it

Logging con Python

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.

What is logging? And a log?

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 they can save these logs in a known file.

How can I use it?

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
Copy after login

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
Copy after login

Explanation

?? We start basic configuration: with logging.basicConfig we declare:

  • filename: name of the particular file that we want to add the logs to (for the example the name is log-de-hoy.log, but ideally it should have a descriptive name with the date of the day)
  • encoding: type of format in which we save each log
  • level: we define from which level we want to observe. The different levels are in their documentation and you will see that they have a numerical value, with logging.INFO being 20. If we need to debug, at least I need a 10. So, with logging.DEBUG we make sure that levels with value 10 onwards register.
  • format: format in which the logs are recorded, in this case it is message level date

?? We record the result of the sum with info level

?? We register the error of adding an int and a string with error level

Why use logging?

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:

  • ? Debugging and troubleshooting
  • ? Performance monitoring and analysis
  • ? Audit and compliance
  • ? Security and anomaly detection

To finish…

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.

The above is the detailed content of Logging con Python. For more information, please follow other related articles on the PHP Chinese website!

source:dev.to
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template