plugin options for Riak destination
Hello everyone, In order to build a riak destination , the first task is to figure out the options syslog-ng plugin would need to understand, For this we have considered the following two use cases 1) Inserting each log message into its own unique key.A templatable bucket would store keys(time-stamps) and its respective values(log messages) 2) Inserting each log message into a Set contained under a key. In order to use a set we need to have a bucket type as "set".Rest is similar to the first case. To switch between the two cases an option mode() is used with parameters "set" for using a set (2nd case) and "store" for the first case. Here is a config snippet for the destination: destination d_riak { riak( server("localhost") port(8087) bucket-type("message") bucket("logs_${YEAR}${MONTH}${DAY}") key("${UNIXTIME}-$(uuid)") value("$(format-json --scope selected-macros)") mode("set") ); }; I would really like to know if the users would prefer to set the mode and bucket type as separate options or as sub-options under bucket() as below: destination d_riak { riak( server("localhost") port(8087) bucket("logs_${YEAR}${MONTH}${DAY}" type("message") mode("store")) key("${UNIXTIME}-$(uuid)") value("$(format-json --scope selected-macros)") ); }; Any other feedback on the topic is also welcome. Thanks, Parth
I don't really have an opinion right here. Those with actual experience with risk should chime in. On May 19, 2015 1:21 PM, "Parth Oberoi" <htrapdev@gmail.com> wrote:
Hello everyone,
In order to build a riak destination , the first task is to figure out the options syslog-ng plugin would need to understand, For this we have considered the following two use cases
1) Inserting each log message into its own unique key.A templatable bucket would store keys(time-stamps) and its respective values(log messages)
2) Inserting each log message into a Set contained under a key. In order to use a set we need to have a bucket type as "set".Rest is similar to the first case.
To switch between the two cases an option mode() is used with parameters "set" for using a set (2nd case) and "store" for the first case.
Here is a config snippet for the destination:
destination d_riak { riak( server("localhost") port(8087) bucket-type("message") bucket("logs_${YEAR}${MONTH}${DAY}") key("${UNIXTIME}-$(uuid)") value("$(format-json --scope selected-macros)") mode("set") ); };
I would really like to know if the users would prefer to set the mode and bucket type as separate options or as sub-options under bucket() as below:
destination d_riak { riak( server("localhost") port(8087) bucket("logs_${YEAR}${MONTH}${DAY}" type("message") mode("store")) key("${UNIXTIME}-$(uuid)") value("$(format-json --scope selected-macros)") ); };
Any other feedback on the topic is also welcome.
Thanks, Parth
______________________________________________________________________________ Member info: https://lists.balabit.hu/mailman/listinfo/syslog-ng Documentation: http://www.balabit.com/support/documentation/?product=syslog-ng FAQ: http://www.balabit.com/wiki/syslog-ng-faq
"Parth" == Parth Oberoi <htrapdev@gmail.com> writes:
Parth> destination d_riak { Parth> riak( Parth> server("localhost") Parth> port(8087) Parth> bucket("logs_${YEAR}${MONTH}${DAY}" type("message") mode("store")) Parth> key("${UNIXTIME}-$(uuid)") Parth> value("$(format-json --scope selected-macros)") Parth> ); Parth> }; This would be my preferred syntax, because bucket-type is tied to the bucket anyway, so I feel it belongs there, instead of being a top-level option. As for mode()... I'm a bit torn on that, but it feels more natural to have it under bucket(). -- |8]
participants (3)
-
Balazs Scheidler
-
Gergely Nagy
-
Parth Oberoi