“Logowanie Pythona do pliku” Kod odpowiedzi

Logowanie Pythona do pliku

import logging
import sys

logger = logging.getLogger()
logger.setLevel(logging.INFO)
formatter = logging.Formatter('%(asctime)s | %(levelname)s | %(message)s', 
                              '%m-%d-%Y %H:%M:%S')

stdout_handler = logging.StreamHandler(sys.stdout)
stdout_handler.setLevel(logging.DEBUG)
stdout_handler.setFormatter(formatter)

file_handler = logging.FileHandler('logs.log')
file_handler.setLevel(logging.DEBUG)
file_handler.setFormatter(formatter)

logger.addHandler(file_handler)
logger.addHandler(stdout_handler)
Benja

Utwórz log w Python

logging.basicConfig(filename="logfilename.log", level=logging.INFO)
# Log Creation

logging.info('your text goes here')
logging.error('your text goes here')
logging.debug('your text goes here')
CodeFun

Logowanie Python BasicConfig Czas

logging.basicConfig(filename='my_log_file.log', format='%(asctime)s - %(message)s', level=logging.INFO)
Bewildered Badger

Logowanie Pythona

# Example usage:
# For now, this is how I like to set up logging in Python:

import logging

# instantiate the root (parent) logger object (this is what gets called
# to create log messages)
root_logger = logging.getLogger()
# remove the default StreamHandler which isn't formatted well
root_logger.handlers = []
# set the lowest-severity log message to be included by the root_logger (this
# doesn't need to be set for each of the handlers that are added to the
# root_logger later because handlers inherit the logging level of their parent
# if their level is left unspecified. The root logger uses WARNING by default
root_logger.setLevel(logging.INFO)

# create the file_handler, which controls log messages which will be written
# to a log file (the default write mode is append)
file_handler = logging.FileHandler('/path/to/logfile.log')
# create the console_handler (which enables log messages to be sent to stdout)
console_handler = logging.StreamHandler()

# create the formatter, which controls the format of the log messages
# I like this format which includes the following information:
# 2022-04-01 14:03:03,446 - script_name.py - function_name - Line: 461 - INFO - Log message.
formatter = logging.Formatter('%(asctime)s - %(filename)s - %(funcName)s - Line: %(lineno)d - %(levelname)s - %(message)s')
# add the formatter to the handlers so they get formatted as desired
file_handler.setFormatter(formatter)
console_handler.setFormatter(formatter)

# set the severity level of the console_hander to ERROR so that only messages
# of severity ERROR or higher are printed to the console
console_handler.setLevel(logging.ERROR)

# add the handlers to the root_logger
root_logger.addHandler(file_handler)
root_logger.addHandler(console_handler)


# given the above setup
# running this line will append the info message to the /path/to/logfile.log
# but won't print to the console
root_logger.INFO("A casual message.")
# running this line will append the error message to the /path/to/logfile.log
# and will print it to the console
root_logger.ERROR("A serious issue!")
Charles-Alexandre Roy

Logger Python do innego pliku

import logging
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')


def setup_logger(name, log_file, level=logging.INFO):
    """To setup as many loggers as you want"""

    handler = logging.FileHandler(log_file)        
    handler.setFormatter(formatter)

    logger = logging.getLogger(name)
    logger.setLevel(level)
    logger.addHandler(handler)

    return logger

# first file logger
logger = setup_logger('first_logger', 'first_logfile.log')
logger.info('This is just info message')

# second file logger
super_logger = setup_logger('second_logger', 'second_logfile.log')
super_logger.error('This is an error message')

def another_method():
   # using logger defined above also works here
   logger.info('Inside method')
Super Snail

Plik dziennika Pythona

import logging
logging.basicConfig(filename='example.log', encoding='utf-8', level=logging.DEBUG)
logging.debug('This message should go to the log file')
logging.info('So should this')
logging.warning('And this, too')
logging.error('And non-ASCII stuff, too, like Øresund and Malmö')
Tense Termite

Odpowiedzi podobne do “Logowanie Pythona do pliku”

Pytania podobne do “Logowanie Pythona do pliku”

Więcej pokrewnych odpowiedzi na “Logowanie Pythona do pliku” w Python

Przeglądaj popularne odpowiedzi na kod według języka

Przeglądaj inne języki kodu