Haskell Language
Logowanie
Szukaj…
Wprowadzenie
Logowanie do Haskell odbywa się zwykle poprzez funkcje w monadzie IO , a zatem ogranicza się do funkcji nieoczyszczonych lub „akcji IO”.
Istnieje kilka sposobów rejestrowania informacji w programie Haskell: od putStrLn (lub print ), po biblioteki takie jak hslogger lub poprzez Debug.Trace .
Logowanie za pomocą hsloggera
Moduł hslogger zapewnia API podobne do frameworka logging Pythona i obsługuje hslogger nazwach hierarchicznych, poziomy i przekierowania do uchwytów poza stdout i stderr .
Domyślnie wszystkie wiadomości poziomu WARNING i wyższe są wysyłane do stderr, a wszystkie pozostałe poziomy dziennika są ignorowane.
import System.Log.Logger (Priority (DEBUG), debugM, infoM, setLevel,
updateGlobalLogger, warningM)
main = do
debugM "MyProgram.main" "This won't be seen"
infoM "MyProgram.main" "This won't be seen either"
warningM "MyProgram.main" "This will be seen"
Możemy ustawić poziom rejestratora według jego nazwy za pomocą updateGlobalLogger :
updateGlobalLogger "MyProgram.main" (setLevel DEBUG)
debugM "MyProgram.main" "This will now be seen"
Każdy rejestrator ma nazwę i są one ułożone hierarchicznie, więc MyProgram jest rodzicem MyParent.Module .