Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Ganeti.Logging
Description
Implementation of the Ganeti logging functionality.
This currently lacks the following (FIXME):
- log file reopening
Note that this requires the hslogger library version 1.1 and above.
Synopsis
- setupLogging :: Maybe String -> String -> Bool -> Bool -> Bool -> SyslogUsage -> IO ()
- class Monad m => MonadLog m where
- data Priority
- logDebug :: MonadLog m => String -> m ()
- logInfo :: MonadLog m => String -> m ()
- logNotice :: MonadLog m => String -> m ()
- logWarning :: MonadLog m => String -> m ()
- logError :: MonadLog m => String -> m ()
- logCritical :: MonadLog m => String -> m ()
- logAlert :: MonadLog m => String -> m ()
- logEmergency :: MonadLog m => String -> m ()
- data SyslogUsage
- syslogUsageToRaw :: SyslogUsage -> String
- syslogUsageFromRaw :: forall m. (Monad m, MonadFail m) => String -> m SyslogUsage
- withErrorLogAt :: (MonadLog m, MonadError e m, Show e) => Priority -> String -> m a -> m a
- isDebugMode :: IO Bool
Documentation
Arguments
:: Maybe String | Log file |
-> String | Program name |
-> Bool | Debug level |
-> Bool | Log to stderr |
-> Bool | Log to console |
-> SyslogUsage | Syslog usage |
-> IO () |
Sets up the logging configuration.
class Monad m => MonadLog m where #
A monad that allows logging.
Instances
MonadLog MetadMonadInt # | |
Defined in Ganeti.Metad.ConfigCore Methods logAt :: Priority -> String -> MetadMonadInt () # | |
MonadLog WConfdMonadInt # | |
Defined in Ganeti.WConfd.Monad Methods logAt :: Priority -> String -> WConfdMonadInt () # | |
MonadLog IO # | |
Defined in Ganeti.Logging | |
Monad m => MonadLog (WriterLogT m) # | |
Defined in Ganeti.Logging.WriterLog Methods logAt :: Priority -> String -> WriterLogT m () # | |
MonadLog m => MonadLog (MaybeT m) # | |
Defined in Ganeti.Logging | |
(MonadLog m, Error e) => MonadLog (ResultT e m) # | |
Defined in Ganeti.Logging | |
MonadLog m => MonadLog (IdentityT m) # | |
Defined in Ganeti.Logging | |
MonadLog m => MonadLog (ReaderT r m) # | |
Defined in Ganeti.Logging | |
MonadLog m => MonadLog (StateT s m) # | |
Defined in Ganeti.Logging | |
(MonadLog m, Monoid w) => MonadLog (RWST r w s m) # | |
Defined in Ganeti.Logging |
Instances
Data Priority | |
Defined in System.Log Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Priority -> c Priority gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Priority toConstr :: Priority -> Constr dataTypeOf :: Priority -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Priority) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Priority) gmapT :: (forall b. Data b => b -> b) -> Priority -> Priority gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Priority -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Priority -> r gmapQ :: (forall d. Data d => d -> u) -> Priority -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Priority -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Priority -> m Priority gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Priority -> m Priority gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Priority -> m Priority | |
Bounded Priority | |
Defined in System.Log | |
Enum Priority | |
Defined in System.Log | |
Generic Priority | |
Read Priority | |
Defined in System.Log | |
Show Priority | |
NFData Priority | |
Defined in System.Log | |
Eq Priority | |
Ord Priority | |
type Rep Priority | |
Defined in System.Log type Rep Priority = D1 ('MetaData "Priority" "System.Log" "hslogger-1.3.1.1-ImoCTOrsk2lITSqD9Ph1GO" 'False) (((C1 ('MetaCons "DEBUG" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "INFO" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "NOTICE" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "WARNING" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "ERROR" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CRITICAL" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ALERT" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "EMERGENCY" 'PrefixI 'False) (U1 :: Type -> Type)))) |
logWarning :: MonadLog m => String -> m () #
Log at warning level.
logCritical :: MonadLog m => String -> m () #
Log at critical level.
logEmergency :: MonadLog m => String -> m () #
Log at emergency level.
data SyslogUsage #
Syslog usage type.
Constructors
SyslogNo | |
SyslogYes | |
SyslogOnly |
Instances
syslogUsageToRaw :: SyslogUsage -> String #
syslogUsageFromRaw :: forall m. (Monad m, MonadFail m) => String -> m SyslogUsage #
withErrorLogAt :: (MonadLog m, MonadError e m, Show e) => Priority -> String -> m a -> m a #
If an error occurs within a given computation, it annotated with a given message and logged and the error is re-thrown.
isDebugMode :: IO Bool #
Check if the logging is at DEBUG level. DEBUG logging is unacceptable for production.