module LuminescentDreams.Logger.Internal where
import qualified Data.Text.Buildable as TFB
import qualified Data.Text.Lazy as T
data LogLevel = LogDebug
| LogInfo
| LogWarning
| LogError
| LogEmergency
deriving (Eq, Ord, Show)
tzFormat :: String
tzFormat = "%Y-%m-%dT%H:%M:%S%Q%z"
data Logger = Logger { logCmd_ :: (T.Text -> IO ())
, lvl_ :: LogLevel
}
instance TFB.Buildable LogLevel where
build LogDebug = TFB.build ("DEBUG" :: String)
build LogInfo = TFB.build ("INFO" :: String)
build LogWarning = TFB.build ("WARNING" :: String)
build LogError = TFB.build ("ERROR" :: String)
build LogEmergency = TFB.build ("EMERGENCY" :: String)