mqsinkd
requirements
- ruby 1.9+
- rubygems bunny
install
> gem install mqsink
>
run
> mqsinkd &
configuration
Base configuration: /etc/mqsink/mqsink.json (hard-coded)
{ "localhost":"0.0.0.0",
"localport":514,
"amqp_server":"127.0.0.1",
"static_queue":"test_queue",
"mode":"raw",
"firewall":"on",
"fw_refresh":"on",
"fw_file":"/etc/mqsink/acl.conf",
"debug":"off",
"classifiers":"/etc/mqsink/classifiers.conf" }
Base configuration: /etc/mqsink/acl.conf
0.0.0.0
Base configuation: /etc/mqsink/classifiers.conf
test_queue [.*]
arguments:
- amqp_server : IP address or hostname of the AMQP server
- static_queue : name of the static queue (only used in 'raw' mode)
- mode : raw | xlate | classify
- firewall : on | off
- fw_file : contains a list of authorised IP addresses (only used when firewall is active)
- fw_refresh : on | off - reload ACL periodically (there is no dynamic counter for it, it just reloads the entire content of the fw_file every 5 packets)
- debug : on | off
- classifiers : contains a list of regular expressions and associated outbound amqp queue (only used in 'classify' mode)
modes:
- raw : mqsinkd writes all authorised input packets to a statically defined queue
- xlate : the amqp queue name is enclosed in the message
- classify : the amqp queue name is paired with user defined regular expressions and stored in a configuration file