Bagaimana untuk Log ke Stdout dan Log Fail Secara serentak dalam Python?

DDD
Lepaskan: 2024-10-18 18:55:29
asal
1032 orang telah melayarinya

How to Log to Stdout and Log File Simultaneously in Python?

Menulis Log ke Stdout dan Fail Log Secara Serentak dalam Python

Mengawal output log boleh menjadi penting untuk nyahpepijat dan menangkap maklumat penting dalam Python. Modul pengelogan menyediakan keupayaan yang luas untuk mengelog mesej ke fail. Walau bagaimanapun, adalah berfaedah untuk turut memaparkan log ke konsol (stdout) untuk keterlihatan serta-merta.

Penyelesaian:

Untuk memastikan semua mesej pengelogan dikeluarkan kepada stdout sebagai tambahan kepada fail log yang ditetapkan, anda boleh melanjutkan kefungsian modul pengelogan dengan menambahkan pengelogan.StreamHandler() pada pengelog akar.

Pelaksanaan:

<code class="python">import logging
import sys

# Capture stdout
stdout = sys.stdout

# Create a root logger
root = logging.getLogger()

# Set the logging level (DEBUG in this case)
root.setLevel(logging.DEBUG)

# Define the StreamHandler
handler = logging.StreamHandler(stdout)

# Configure the message format
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
handler.setFormatter(formatter)

# Add the StreamHandler to the root logger
root.addHandler(handler)</code>
Salin selepas log masuk

Dengan pengubahsuaian ini, semua mesej yang dilog menggunakan kaedah seperti logger.warning, logger.critical dan logger.error akan ditulis pada kedua-dua fail log yang dikonfigurasikan dan dipaparkan terus ke stdout. Ini memudahkan penyelesaian masalah dan memastikan mesej mudah diakses untuk diperiksa dengan segera.

Atas ialah kandungan terperinci Bagaimana untuk Log ke Stdout dan Log Fail Secara serentak dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan