Python:
Kirjoittaminen standardivirheeseen
Kuinka:
Käyttäen sys.stderr
Pythonin sisäänrakennettu sys
-moduuli mahdollistaa eksplisiittisen kirjoittamisen stderr
-virtaan. Tämä lähestymistapa on suoraviivainen yksinkertaisia virheviestejä tai diagnostiikkaa varten.
import sys
sys.stderr.write('Virhe: Jotain meni pieleen.\n')
Näytetuloste (stderriin):
Virhe: Jotain meni pieleen.
Käyttäen print
-funktiota
Pythonin print
-funktio voi uudelleenohjata tulosteensa stderr
-virtaan määrittelemällä file
-parametrin. Tämä menetelmä on hyödyllinen, kun halutaan hyödyntää print
in käyttäjäystävällisyyttä käsiteltäessä virheviestejä.
from sys import stderr
print('Virhe: Moduulin vika.', file=stderr)
Näytetuloste (stderriin):
Virhe: Moduulin vika.
Käyttäen logging
-moduulia
Kattavampaa ratkaisua varten Pythonin logging
-moduuli voi ohjata viestejä stderr
-virtaan ja paljon muuhunkin, kuten kirjoittaa tiedostoon tai mukauttaa viestin muotoa. Tämä menetelmä on parhaiten soveltuva sovelluksiin, jotka vaativat eri tasoja lokitusta, viestien muotoilua tai kohdepaikkoja.
import logging
logging.basicConfig(level=logging.WARNING)
logger = logging.getLogger(__name__)
logger.error('Virhe: Tietokantayhteys epäonnistui.')
Näytetuloste (stderriin):
ERROR:__main__:Virhe: Tietokantayhteys epäonnistui.
Kolmannen osapuolen kirjastot: loguru
loguru
on suosittu kolmannen osapuolen kirjasto, joka yksinkertaistaa lokitusta Python-sovelluksissa. Se ohjaa automaattisesti virheet stderr
-virtaan, muiden ominaisuuksien joukossa.
Käyttääksesi loguru
a, asenna se ensin pip:n kautta:
pip install loguru
Sitten sisällytä se Python-skriptiisi seuraavasti:
from loguru import logger
logger.error('Virhe: Tiedoston avaaminen epäonnistui.')
Näytetuloste (stderriin):
2023-04-05 12:00:00.000 | ERROR | __main__:<module>:6 - Virhe: Tiedoston avaaminen epäonnistui.