Python:
Pisanie do standardowego błędu
Jak to zrobić:
Korzystając z sys.stderr
Wbudowany moduł sys w Pythonie pozwala na jawne pisanie do stderr. To podejście jest proste dla prostych komunikatów o błędach lub diagnostyki.
import sys
sys.stderr.write('Błąd: Coś poszło nie tak.\n')Przykładowe wyjście (do stderr):
Błąd: Coś poszło nie tak.Korzystając z funkcji print
Funkcja print w Pythonie może przekierować swoje wyjście do stderr, określając parametr file. Ta metoda jest przydatna do wykorzystania przyjazności funkcji print podczas obsługi komunikatów o błędach.
from sys import stderr
print('Błąd: Awaria w module.', file=stderr)Przykładowe wyjście (do stderr):
Błąd: Awaria w module.Korzystając z modułu logging
Dla bardziej kompleksowego rozwiązania, moduł logging w Pythonie może kierować komunikaty do stderr i wiele więcej, takie jak zapisywanie do pliku czy dostosowywanie formatu wiadomości. Ta metoda jest najlepsza dla aplikacji wymagających różnych poziomów logowania, formatowania wiadomości lub celów.
import logging
logging.basicConfig(level=logging.WARNING)
logger = logging.getLogger(__name__)
logger.error('Błąd: Nie udało się połączyć z bazą danych.')Przykładowe wyjście (do stderr):
ERROR:__main__:Błąd: Nie udało się połączyć z bazą danych.Biblioteki stron trzecich: loguru
loguru to popularna biblioteka stron trzecich, która upraszcza logowanie w aplikacjach Pythona. Automatycznie kieruje błędy do stderr, wśród innych funkcjonalności.
Aby użyć loguru, najpierw zainstaluj ją za pomocą pip:
pip install loguruNastępnie włącz ją do swojego skryptu Pythona w następujący sposób:
from loguru import logger
logger.error('Błąd: Nie udało się otworzyć pliku.')Przykładowe wyjście (do stderr):
2023-04-05 12:00:00.000 | ERROR | __main__:<module>:6 - Błąd: Nie udało się otworzyć pliku.