h*31      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn 1.3.1.1 $Copyright (C) 2004-2011 John GoerzenBSD3portable Safe-Inferred7< hsloggerInternal type of log records hsloggerPriorities are used to define how important a log message is. Users can filter log messages based on priorities.These have their roots on the traditional syslog system. The standard definitions are given below, but you are free to interpret them however you like. They are listed here in ascending importance order.hsloggerDebug messageshslogger InformationhsloggerNormal runtime conditionshsloggerGeneral WarningshsloggerGeneral ErrorshsloggerSevere situationshsloggerTake immediate action hsloggerSystem is unusable hslogger    Safe-Inferred hsloggerA LogFormatter is used to format log messages. Note that it is paramterized on the Handler to allow the formatter to use information specific to the handler (an example of can be seen in the formatter used in  )hslogger DEBUG INFO, NOTICE -> INFO WARNING -> WARN ERROR, CRITICAL, ALERT -> ERROR EMERGENCY -> FATAL This is useful when the log will only be consumed by log4j tools and you don't want to go out of your way transforming the log or configuring the tools. -hslogger8Create a file log handler that uses hslogger priorities..hslogger9Create a file log handler that uses log4j levels (see , for mappings). +-,.+-,.$Copyright (C) 2004-2011 John GoerzenBSD3portable Safe-Inferred#Y1hsloggerThis is the base class for the various log handlers. They should all adhere to this class. The name of the root logger, which is always defined and present on the system.qhsloggerThe log tree. Initialize it with a default root logger and (FIXME) a logger for MissingH itself.rhsloggerGiven a name, return all components of it, starting from the root. Example return value: >["", "MissingH", "System.Cmd.Utils", "System.Cmd.Utils.pOpen"]2hslogger:Log a message using the given logger at a given priority. 3hsloggerLog a message at  priority 4hsloggerLog a message at  priority 5hsloggerLog a message at  priority 6hsloggerLog a message at  priority 7hsloggerLog a message at  priority 8hsloggerLog a message at  priority 9hsloggerLog a message at  priority :hsloggerLog a message at   priority ;hsloggerReturns the logger for the given name. If no logger with that name exists, creates new loggers and any necessary parent loggers, with no connected handlers.<hsloggerReturns the root logger.=hslogger>Log a message, assuming the current logger's level permits it.shsloggerHandle a log request.thslogger Call a handler given a HandlerT.uhslogger%Generate IO actions for the handlers.>hsloggerAdd handler to 0. Returns a new 0.?hsloggerRemove a handler from the 0. Handlers are removed in the reverse order they were added, so the following property holds for any  h: !removeHandler . addHandler h = id'If no handlers are associated with the 0, it is returned unchanged.The root logger's default handler that writes every message to stderr can be removed by using this function before any handlers have been added to the root logger: /updateGlobalLogger rootLoggerName removeHandler@hsloggerSet the 0's list of handlers to the list supplied. All existing handlers are removed first.AhsloggerReturns the "level" of the logger. Items beneath this level will be ignored.BhsloggerSets the "level" of the 0. Returns a new 0 object with the new level.ChsloggerClears the "level" of the 02. It will now inherit the level of | its parent.DhsloggerUpdates the global record for the given logger to take into account any changes you may have made.EhsloggerHelps you make changes on the given logger. Takes a function that makes changes and writes those changes back to the global database. Here's an example from above ("s" is a ): updateGlobalLogger "MyApp.BuggyComponent" (setLevel DEBUG . setHandlers [s])FhsloggerAllow graceful shutdown. Release all opened files, handlers, etc.GhsloggerTraps exceptions that may occur, logging them, then passing them on.Takes a logger name, priority, leading description text (you can set it to ""+ if you don't want any), and action to run. 2hsloggerName of the logger to usehsloggerPriority of this messagehsloggerThe log text itself3hslogger Logger namehslogger Log message4hslogger Logger namehslogger Log message5hslogger Logger namehslogger Log message6hslogger Logger namehslogger Log message7hslogger Logger namehslogger Log message8hslogger Logger namehslogger Log message9hslogger Logger namehslogger Log message:hslogger Logger namehslogger Log messageEhslogger Logger namehsloggerFunction to call!0 23456789:FG=;<1>?@ABCDE!0 23456789:FG=;<1>?@ABCDE  Safe-Inferred$vhsloggerEncode w! to a list of UTF8-encoded octetsCode-points in the U+D800-U+DFFF; range will be encoded as the replacement character (i.e. U+FFFD).The code is extracted from Cabal library, written originally HVRx$Copyright (C) 2004-2011 John GoerzenBSD3portable Safe-Inferred.Ihslogger Options for a. Jhslogger4Automatically log process ID (PID) with each messageKhslogger%Send a copy of each message to stderrLhsloggerFacilities are used by the system to determine where messages are sent. MhsloggerKernel messages; you should likely never use this in your programsNhsloggerGeneral userland messages. Use this if nothing else is appropriateOhslogger E-Mail systemPhslogger Daemon (server process) messagesQhslogger#Authentication or security messagesRhsloggerInternal syslog messages; you should likely never use this in your programsShsloggerPrinter messagesThslogger Usenet newsUhslogger UUCP messagesVhslogger Cron messagesWhsloggerPrivate authentication messagesXhslogger FTP messagesYhsloggerLOCAL0 through LOCAL7 are reserved for you to customize as you wishahsloggerInitialize the Syslog system using the local system's default interface, /dev/log. Will return a new .On Windows, instead of using /dev/log, this will attempt to send UDP messages to something listening on the syslog port (514) on localhost.Use c if you need more control.bhsloggerInitialize the Syslog system using an arbitrary Unix socket (FIFO).Not supported under Windows.chslogger Log to a remote server via UDP. dhsloggerThe most powerful initialization mechanism. Takes an open datagram socket. ahsloggerThe name of this program -- will be prepended to every log messagehslogger A list of I&s. The list [] is perfectly valid. [J] is probably most common here.hsloggerThe L< value to pass to the syslog system for every message loggedhsloggerMessages logged below this priority will be ignored. To include every message, set this to .hsloggerReturns the new handlerbhslogger Path to FIFOhslogger Program namehsloggerIshsloggerFacility valuehsloggerPriority limitchslogger/Usually AF_INET or AF_INET6; see Network.SockethsloggerRemote hostname. Some use  localhosthslogger514 is the default for sysloghslogger Program namehsloggerIshsloggerFacility valuehsloggerPriority limitdhsloggerA datagram sockethsloggerAddress for transmissionshslogger*socket connection mode (stream / datagram)hslogger Program namehsloggerIshsloggerFacility valuehsloggerPriority limitHabcdLMNOPQRSTUVWXYZ[\]^_`IJKHabcdLMNOPQRSTUVWXYZ[\]^_`IJKBSD3portable Safe-Inferred1lhsloggerCreates a Growl handler. Once a Growl handler has been created, machines that are to receive the message have to be specified. mhsloggerAdds a remote machine's address to the list of targets that will receive log messages. Calling this function sends a registration packet to the machine. This function will throw an exception if the host name cannot be found. lhsloggerThe name of the servicehsloggerPriority of handlermlml !"#$%&'()*+,-../0123456789:;<=>?@ABCDEFGHIJKLM('NOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~+ {| 'hslogger-1.3.1.1-8syGQuqanm68zmcDyyuDsl System.LogSystem.Log.FormatterSystem.Log.HandlerSystem.Log.Handler.SimpleSystem.Log.Handler.Log4jXMLSystem.Log.LoggerSystem.Log.Handler.SyslogSystem.Log.Handler.GrowlhsloggerSyslogDate.Time.Format formatTimeUTF8 LogRecordPriorityDEBUGINFONOTICEWARNINGERRORCRITICALALERT EMERGENCY$fNFDataPriority $fEqPriority $fOrdPriority$fEnumPriority$fBoundedPriority$fShowPriority$fReadPriority$fDataPriority$fGenericPriority LogFormatter nullFormattersimpleLogFormattertfLogFormatter varFormatter LogHandlersetLevelgetLevel setFormatter getFormatterhandleemitcloseGenericHandlerpriority formatterprivData writeFunc closeFunc streamHandler fileHandlerverboseStreamHandler$fLogHandlerGenericHandlerlog4jStreamHandlerlog4jStreamHandler'log4jFileHandlerlog4jFileHandler' $fShowXMLLoggerrootLoggerNamelogMdebugMinfoMnoticeMwarningMerrorM criticalMalertM emergencyM getLogger getRootLoggerlogL addHandler removeHandler setHandlers clearLevelsaveGlobalLoggerupdateGlobalLoggerremoveAllHandlers traplogging SyslogHandlerOptionPIDPERRORFacilityKERNUSERMAILDAEMONAUTHSYSLOGLPRNEWSUUCPCRONAUTHPRIVFTPLOCAL0LOCAL1LOCAL2LOCAL3LOCAL4LOCAL5LOCAL6LOCAL7openlog openlog_localopenlog_remoteopenlog_generic$fLogHandlerSyslogHandler $fEqOption $fShowOption $fReadOption $fEqFacility$fShowFacility$fReadFacility growlHandler addTarget$fLogHandlerGrowlHandler replaceVarMbaseGHC.Base$logTreecomponentsOfName callHandlerhandlerActionsencodeStringUtf8StringtoUTF8BS