| Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
|---|---|
| License | LGPL-2.1 |
| Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
| Safe Haskell | None |
| Language | Haskell2010 |
GI.Soup.Objects.Logger
Contents
Description
- newtype Logger = Logger (ManagedPtr Logger)
- class GObject o => IsLogger o
- toLogger :: IsLogger o => o -> IO Logger
- noLogger :: Maybe Logger
- data LoggerAttachMethodInfo
- loggerAttach :: (HasCallStack, MonadIO m, IsLogger a, IsSession b) => a -> b -> m ()
- data LoggerDetachMethodInfo
- loggerDetach :: (HasCallStack, MonadIO m, IsLogger a, IsSession b) => a -> b -> m ()
- loggerNew :: (HasCallStack, MonadIO m) => LoggerLogLevel -> Int32 -> m Logger
- data LoggerSetPrinterMethodInfo
- loggerSetPrinter :: (HasCallStack, MonadIO m, IsLogger a) => a -> LoggerPrinter -> m ()
- data LoggerSetRequestFilterMethodInfo
- loggerSetRequestFilter :: (HasCallStack, MonadIO m, IsLogger a) => a -> LoggerFilter -> m ()
- data LoggerSetResponseFilterMethodInfo
- loggerSetResponseFilter :: (HasCallStack, MonadIO m, IsLogger a) => a -> LoggerFilter -> m ()
- data LoggerLevelPropertyInfo
- constructLoggerLevel :: IsLogger o => LoggerLogLevel -> IO (GValueConstruct o)
- getLoggerLevel :: (MonadIO m, IsLogger o) => o -> m LoggerLogLevel
- loggerLevel :: AttrLabelProxy "level"
- setLoggerLevel :: (MonadIO m, IsLogger o) => o -> LoggerLogLevel -> m ()
- data LoggerMaxBodySizePropertyInfo
- constructLoggerMaxBodySize :: IsLogger o => Int32 -> IO (GValueConstruct o)
- getLoggerMaxBodySize :: (MonadIO m, IsLogger o) => o -> m Int32
- loggerMaxBodySize :: AttrLabelProxy "maxBodySize"
- setLoggerMaxBodySize :: (MonadIO m, IsLogger o) => o -> Int32 -> m ()
Exported types
Constructors
| Logger (ManagedPtr Logger) |
Instances
| GObject Logger Source # | |
| IsObject Logger Source # | |
| IsLogger Logger Source # | |
| IsSessionFeature Logger Source # | |
| ((~) * info (ResolveLoggerMethod t Logger), MethodInfo * info Logger p) => IsLabel t (Logger -> p) Source # | |
| ((~) * info (ResolveLoggerMethod t Logger), MethodInfo * info Logger p) => IsLabelProxy t (Logger -> p) Source # | |
| HasAttributeList * Logger Source # | |
| type AttributeList Logger Source # | |
| type SignalList Logger Source # | |
Methods
attach
data LoggerAttachMethodInfo Source #
Instances
| ((~) * signature (b -> m ()), MonadIO m, IsLogger a, IsSession b) => MethodInfo * LoggerAttachMethodInfo a signature Source # | |
Arguments
| :: (HasCallStack, MonadIO m, IsLogger a, IsSession b) | |
| => a |
|
| -> b |
|
| -> m () |
Deprecated: Use sessionAddFeature instead.
Sets logger to watch session and print debug information for
its messages.
(The session will take a reference on logger, which will be
removed when you call loggerDetach, or when the session is
destroyed.)
detach
data LoggerDetachMethodInfo Source #
Instances
| ((~) * signature (b -> m ()), MonadIO m, IsLogger a, IsSession b) => MethodInfo * LoggerDetachMethodInfo a signature Source # | |
Arguments
| :: (HasCallStack, MonadIO m, IsLogger a, IsSession b) | |
| => a |
|
| -> b |
|
| -> m () |
Deprecated: Use sessionRemoveFeature instead.
Stops logger from watching session.
new
Arguments
| :: (HasCallStack, MonadIO m) | |
| => LoggerLogLevel |
|
| -> Int32 |
|
| -> m Logger | Returns: a new |
Creates a new Logger with the given debug level. If level is
LoggerLogLevelBody, maxBodySize gives the maximum number of
bytes of the body that will be logged. (-1 means "no limit".)
If you need finer control over what message parts are and aren't
logged, use loggerSetRequestFilter and
loggerSetResponseFilter.
setPrinter
data LoggerSetPrinterMethodInfo Source #
Instances
| ((~) * signature (LoggerPrinter -> m ()), MonadIO m, IsLogger a) => MethodInfo * LoggerSetPrinterMethodInfo a signature Source # | |
Arguments
| :: (HasCallStack, MonadIO m, IsLogger a) | |
| => a |
|
| -> LoggerPrinter |
|
| -> m () |
Sets up an alternate log printing routine, if you don't want the log to go to <literal>stdout</literal>.
setRequestFilter
data LoggerSetRequestFilterMethodInfo Source #
Instances
| ((~) * signature (LoggerFilter -> m ()), MonadIO m, IsLogger a) => MethodInfo * LoggerSetRequestFilterMethodInfo a signature Source # | |
loggerSetRequestFilter Source #
Arguments
| :: (HasCallStack, MonadIO m, IsLogger a) | |
| => a |
|
| -> LoggerFilter |
|
| -> m () |
Sets up a filter to determine the log level for a given request.
For each HTTP request logger will invoke requestFilter to
determine how much (if any) of that request to log. (If you do not
set a request filter, logger will just always log requests at the
level passed to loggerNew.)
setResponseFilter
data LoggerSetResponseFilterMethodInfo Source #
Instances
| ((~) * signature (LoggerFilter -> m ()), MonadIO m, IsLogger a) => MethodInfo * LoggerSetResponseFilterMethodInfo a signature Source # | |
loggerSetResponseFilter Source #
Arguments
| :: (HasCallStack, MonadIO m, IsLogger a) | |
| => a |
|
| -> LoggerFilter |
|
| -> m () |
Sets up a filter to determine the log level for a given response.
For each HTTP response logger will invoke responseFilter to
determine how much (if any) of that response to log. (If you do not
set a response filter, logger will just always log responses at
the level passed to loggerNew.)
Properties
level
data LoggerLevelPropertyInfo Source #
Instances
constructLoggerLevel :: IsLogger o => LoggerLogLevel -> IO (GValueConstruct o) Source #
getLoggerLevel :: (MonadIO m, IsLogger o) => o -> m LoggerLogLevel Source #
loggerLevel :: AttrLabelProxy "level" Source #
setLoggerLevel :: (MonadIO m, IsLogger o) => o -> LoggerLogLevel -> m () Source #
maxBodySize
data LoggerMaxBodySizePropertyInfo Source #
Instances
constructLoggerMaxBodySize :: IsLogger o => Int32 -> IO (GValueConstruct o) Source #
loggerMaxBodySize :: AttrLabelProxy "maxBodySize" Source #