System.Log.Handler.Simple

hslogger-1.2.10: Versatile logging framework

Copyright | Copyright (C) 2004-2011 John Goerzen
License | BSD3
Maintainer | John Goerzen <jgoerzen@complete.org>
Stability | provisional
Portability | portable
Safe Haskell | Safe
Language | Haskell98

System.Log.Handler.Simple

Description

Simple log handlers

Written by John Goerzen, jgoerzen@complete.org

Synopsis

- streamHandler :: Handle -> Priority -> IO (GenericHandler Handle)
- fileHandler :: FilePath -> Priority -> IO (GenericHandler Handle)
- data GenericHandler a = GenericHandler {
  - priority :: Priority
  - formatter :: LogFormatter (GenericHandler a)
  - privData :: a
  - writeFunc :: a -> String -> IO ()
  - closeFunc :: a -> IO ()
  }
- verboseStreamHandler :: Handle -> Priority -> IO (GenericHandler Handle)

# Documentation

streamHandler :: Handle -> Priority -> IO (GenericHandler Handle) #

Create a stream log handler. Log messages sent to this handler will be sent to the stream used initially. Note that the `close` method will have no effect on stream handlers; it does not actually close the underlying stream.

fileHandler :: FilePath -> Priority -> IO (GenericHandler Handle) #

Create a file log handler. Log messages sent to this handler will be sent to the filename specified, which will be opened in Append mode. Calling `close` on the handler will close the file.

data GenericHandler a #

A helper data type.

Constructors

GenericHandler |
Fields priority :: Priority formatter :: LogFormatter (GenericHandler a) privData :: a writeFunc :: a -> String -> IO () closeFunc :: a -> IO ()

Instances

LogHandler (GenericHandler a) # |
Methods setLevel :: GenericHandler a -> Priority -> GenericHandler a # getLevel :: GenericHandler a -> Priority # setFormatter :: GenericHandler a -> LogFormatter (GenericHandler a) -> GenericHandler a # getFormatter :: GenericHandler a -> LogFormatter (GenericHandler a) # handle :: GenericHandler a -> LogRecord -> String -> IO () # emit :: GenericHandler a -> LogRecord -> String -> IO () # close :: GenericHandler a -> IO () #

verboseStreamHandler :: Handle -> Priority -> IO (GenericHandler Handle) #

Like `streamHandler`, but note the priority and logger name along with each message.