Elixir:
Kirjoittaminen standardivirheeseen

Miten:

Elixirissä voit käyttää IO-moduulin funktioita, kuten IO.puts/2 ja IO.warn/2, kirjoittaaksesi viestejä standardivirheeseen:

# Kirjoittaa yksinkertaisen viestin stderr:iin
IO.puts(:stderr, "Virhe: Jotain meni pieleen!")

# Käyttää IO.warn, joka on semanttisesti sopivampi varoituksille/virheille
IO.warn("Varoitus: Olet ylittämässä rajan!")

Esimerkkituloste terminaalissa IO.puts/2-käytöllä:

Virhe: Jotain meni pieleen!

IO.warn/2-käytöllä tuloste olisi samankaltainen, mutta IO.warn/2 on erityisesti suunniteltu varoituksille ja saattaa sisältää lisämuotoilua tai -toimintaa tulevissa Elixir-versioissa.

Kolmannen osapuolen kirjastojen käyttö

Vaikka Elixiriin sisältyvä vakio kirjasto on yleensä riittävä käsittelemään standardivirheulostuloa, saatat löytää kirjastoja, kuten Logger, hyödyllisiksi monimutkaisemmissa sovelluksissa tai erilaisten lokitasojen ja tulosteiden määrittämiseen.

Esimerkki käyttäen Loggeria virheviestin tulostukseen:

require Logger

# Konfiguroi Logger ulostamaan stderr:iin
Logger.configure_backend(:console, device: :stderr)

# Kirjoittaa virheviestin
Logger.error("Virhe: Yhteys tietokantaan epäonnistui.")

Tämä asetus ohjaa Loggerin tulosteen erityisesti stderr:iin, mikä on hyödyllistä erottaessasi virhelokit tavallisista lokiviesteistä.