hslogstash-0.3.6: A library to work with, or as, a logstash server

Safe HaskellNone



Datatypes, helper functions, and JSON instances for Logstash messages.



data LogstashMessage Source

The Logstash message, as described in https://github.com/logstash/logstash/wiki/logstash's-internal-message-format. Please note that it is good practice to forget about the timestamp when creating messages (set logstashTime to Nothing), as it should be a responsability of the Logstash server to add it.

emptyLSMessage :: Text -> LogstashMessageSource

As the name implies, this creates a dummy Logstash message, only updating the message field.

logstashTimestamp :: UTCTime -> TextSource

This formats an UTCTime in what logstash expects

parseLogstashTime :: Text -> Maybe UTCTimeSource

This parses the logstash time format.

value2logstash :: Value -> Maybe LogstashMessageSource

This will try to convert an arbitrary JSON value into a LogstashMessage.

addLogstashTime :: LogstashMessage -> IO LogstashMessageSource

Adds the current timestamp if it is not provided.



:: Text

The tag to add

-> LogstashMessage 
-> LogstashMessage 

Adds a tag to a logstash message.