Popularity
3.4
Growing
Activity
0.0
Declining
7
1
0

Monthly Downloads: 46
Programming language: Haskell
License: BSD 3-clause "New" or "Revised" License
Tags: Web     Wai    
Latest version: v0.2.0

wai-slack-middleware alternatives and similar packages

Based on the "wai" category

Do you think we are missing an alternative of wai-slack-middleware or a related project?

Add another 'wai' Package

README

wai-slack-middleware

Build Status Build Status

A Slack middleware for wai Used for logging the request information into Slack from a WAI application via middleware.

Usage:

Settings are controlled via the type SlackConfig:

import Network.HTTP.Types.Status
let slackConfig = SlackConfig {
    webHookUrl = "https://hooks.slack.com/services/xxx/xxxxxxxx",
    httpManager = appHttpManager foundation,
    responseFilter = \resp -> status400 == responseStatus resp,
    requestFilter = \_ -> True
}

The above configuration will send slack notification for all 400 http status code.

Integrating with yesod scaffolding templates

Go to Application.hs and change the function makeApplication to something like this:

makeApplication :: App -> IO Application
makeApplication foundation = do
  logWare <- makeLogWare foundation
  let slackConfig = SlackConfig {
                               webHookUrl = "https://hooks.slack.com/services/xxxx/xxxxxxx",
                               httpManager = appHttpManager foundation,
                               responseFilter = \resp -> status400 == responseStatus resp,
                               requestFilter = \_ -> True
                             }
  -- Create the WAI application and apply middlewares
  appPlain <- toWaiAppPlain foundation
  return $ slack slackConfig $ logWare $ defaultMiddlewaresNoLogging appPlain

Ref: