pub

Pipe stdin to a redis pub/sub channel

Latest on Hackage:3.0.0

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD3 licensed and maintained by Parnell Springmeyer

Welcome!

Hackage: Pub Build Status: Pub

The pub utility publishes input from stdin to a redis channel and the sub utility consumes from a redis channel, writing to stdout.

Quickstart

Publishing to Redis from stdin is easy with the pub utility:

$ pub --help
Pipe stdin to a redis pub/sub channel

Usage: pub --channel TEXT [--host STRING] [--port INTEGER] [--db INTEGER]
           [--version]

Available options:
  -h,--help                Show this help text
  --channel TEXT           Redis channel to publish to
  --host STRING            Redis host (default: localhost)
  --port INTEGER           Redis post (default: 6379)
  --db INTEGER             Redis db (default: 0)

$ journalctl -f nginx.service | pub --channel "nginx-loglines"

and subscribing to Redis channels and piping to stdout is also easy with the sub utility:

$ sub --help
Subscribe to redis channels and pipe to stdout

Usage: sub [--channel TEXT]... [--host STRING] [--port INTEGER] [--db INTEGER]
           [--version]

Available options:
  -h,--help                Show this help text
  --channel TEXT...        Redis channel(s) to subscribe to
  --host STRING            Redis host (default: localhost)
  --port INTEGER           Redis post (default: 6379)
  --db INTEGER             Redis db (default: 0)

$ sub --channel "nginx-loglines" --channel "haproxy-loglines" # This subscribes to both redis channels

Building

You can build multiple ways:

  • stack build
  • cabal build
  • nix-build --not-out-link -A pub release.nix
  • nix-shell -A pub.env release.nix
comments powered byDisqus