forked from syslog-ng/syslog-ng
-
Notifications
You must be signed in to change notification settings - Fork 0
Riak Destination
Parth Oberoi edited this page Aug 7, 2015
·
3 revisions
##Prerequisites
- Erlang
http://docs.basho.com/riak/latest/ops/building/installing/erlang/
- Riak
http://docs.basho.com/riak/latest/downloads/
- Google Protocol Buffers
https://developers.google.com/protocol-buffers/docs/downloads
- Protobuf-c
https://github.com/protobuf-c/protobuf-c
- flex
- bison
- gcc
- glib
- eventlog
##Getting Started *
git clone https://github.com/hTrap/syslog-ng.git --branch f/riaktest
./autogen.sh
./configure CFLAGS="-ggdb3 -O0" --prefix=$HOME/path/to/dir/syslog-ng --disable-java
make
-
riak start
(for set in bulk mode use, make sure the riak ulimit is set to a higher value than 1024) make check
make install
- copy the
syslog-ng/modules/riak/riak-example.conf
from source to istallation prefixetc/syslog-ng.conf
##The options for the riak destination
-
host()
- string - the hostname or ip address of the riak server default -localhost
-
port()
- number - the port number of the riak server default -8087
-
bucket("<template>" type() mode())
:-
<template>
- takes in the bucket name template for eglogs_${YEAR}${MONTH}${DAY}
-
type()
- takes in the bucket_type -
mode()
- takes inset
(using riak CRDT set) orstore
as modes
-
-
key("<template>")
- takes a key name template for eg${UNIX_TIME}-${UUID}
-
value("<template>" charset() content_type())
-
charset()
takes in charset for egutf8
-
content_type()
takes in content type egapplication/json
-
-
flush_lines()
- This works only withset
mode adding to its bulk functionality It takes in a number say 100 and then saves the messages in buffer until 100 messages are received and then sends it to riak