Ubah hala Output Logger Python ke Stdout
Dalam modul pengelogan Python, mesej biasanya ditulis pada fail log tertentu berdasarkan tahap pengelogannya. Walau bagaimanapun, anda mungkin memerlukan semua mesej log untuk dikeluarkan bukan sahaja kepada fail log tetapi juga kepada output standard (stdout) untuk tujuan penyelesaian masalah atau pemantauan.
Untuk mencapai ini, anda boleh menggunakan pengelogan.StreamHandler() class, yang membolehkan anda mengubah hala keluaran log ke stdout. Proses ini melibatkan penambahan StreamHandler pada root logger, yang mengawal semua logger lain.
Contoh Kod:
<code class="python">import logging import sys # Retrieve the root logger root = logging.getLogger() # Set the root logger's logging level (optional, if needed) root.setLevel(logging.DEBUG) # Create a StreamHandler that redirects logging output to stdout handler = logging.StreamHandler(sys.stdout) # Set the logging level for the handler (optional, if needed) handler.setLevel(logging.DEBUG) # Define a formatter for the log messages formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') # Set the formatter for the handler handler.setFormatter(formatter) # Add the StreamHandler to the root logger root.addHandler(handler)</code>
Dengan kod ini disediakan, semua mesej log dijana oleh logger.warning , kaedah logger.critical dan logger.error akan ditulis pada fail log dan stdout, membolehkan akses mudah kepada mesej ralat dan amaran penting semasa pembangunan atau operasi pemantauan.
Atas ialah kandungan terperinci Bagaimana untuk Mengoutput Mesej Logger Python ke Output Standard (Stdout)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!