Aha!  Thanks for the info David - I wouldn't want to build on top of a
feature that may be deprecated in the near future.

Brian


On Fri, Jan 4, 2013 at 8:30 PM, David Lang <[email protected]> wrote:

> It's probably better to use JSON instead of array. Array is a very early
> thing and there is some talk of phasing it out rather than needing to
> support multiple ways of passing groups of messages.
>
> David Lang
>
>
>  On Fri, 4 Jan 2013, Brian Knox wrote:
>
>  Aha!  I think in this case array passing may be what I need.  Thanks!
>>
>> Brian
>> On 1/4/2013 4:00 AM, Rainer Gerhards wrote:
>>
>>> Quick hint: you need to set the param passing mode inside the plugin.
>>> Not the template type specifies what you get, but the plugin asks the
>>> engine. What you look for is JSON passing mode (or maybe array passing).
>>> Ommongodb should help you, else ping me early next week.
>>>
>>> Rainer
>>>
>>>  -----Original Message-----
>>>> From: 
>>>> [email protected].**com<[email protected]>[mailto:
>>>> rsyslog-
>>>> [email protected]] On Behalf Of Brian Knox
>>>> Sent: Thursday, January 03, 2013 2:22 PM
>>>> To: [email protected]
>>>> Subject: Re: [rsyslog] working with list templates
>>>>
>>>> Hi Radu!  Thanks for the link, but I already know how to work with list
>>>> templates from a conf perspective.  I'm looking for good examples of
>>>> accessing that data from code in an output plugin.  Currently my plugin
>>>> simply does this in CODESTARTdoAction:
>>>>
>>>> CHKiRet(writeHiredis(ppString[**0], pData));
>>>>
>>>> This passes the entire output from the template as a string to redis.
>>>> This works ok when I want to construct redis commands from templates
>>>> using individual properties straight to hiredis's redisAppendCommand
>>>> function, such as:
>>>>
>>>> "HINCR progcount %programname% 1"
>>>>
>>>> But it does not work when I want to send whole messages to redis
>>>> (whitespace in the syslog message be interpreted as delimiters in the
>>>> command, causing errors).
>>>>
>>>> hiredis has another function however, redisAppendCommandArgv, that is
>>>> variatic.  In order to use this I would like to construct a list using
>>>> the list templates, and then access each individual member of the list
>>>> from the output plugin code so I can construct the array to pass to
>>>> redisAppendCommandArgv.  So, let's say I construct the following
>>>> template:
>>>>
>>>> template(name="redisPushQueue" type="list") {
>>>>       constant(value="LPUSH")
>>>>       constant(value="queue_key")
>>>>       property(name="msg")
>>>> }
>>>>
>>>>   From the output plugin code, how do I then access each member of this
>>>> list individually with the new template code?
>>>>
>>>> Make sense?
>>>>
>>>> Brian
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> 1) Can
>>>> On 1/3/2013 7:59 AM, Radu Gheorghe wrote:
>>>>
>>>>> Hello Brian,
>>>>>
>>>>> Just to make sure we're not missing the obvious:
>>>>> http://www.rsyslog.com/doc/**rsyslog_conf_templates.html<http://www.rsyslog.com/doc/rsyslog_conf_templates.html>
>>>>>
>>>>> Besides that, there are a couple of examples here:
>>>>>
>>>>>
>>>>> 2013/1/3 Brian Knox <[email protected]>
>>>>>
>>>>>  I've been working on some improvements for the omhiredis output
>>>>>>
>>>>> plugin this
>>>>
>>>>> week.  I think I've come up with a better way of combining templates
>>>>>>
>>>>> with
>>>>
>>>>> redis command formatting.  In order to do this, I need to, given a
>>>>>>
>>>>> list
>>>>
>>>>> style template, get the number of elements in the list and the
>>>>>>
>>>>> length of
>>>>
>>>>> each element.
>>>>>>
>>>>>> I've only worked with string templates (from a plugin perspective)
>>>>>>
>>>>> with my
>>>>
>>>>> output plugins so far.  Is there a good example somewhere for
>>>>>>
>>>>> dealing with
>>>>
>>>>> list templates?
>>>>>>
>>>>>> On other fronts, I now omhiredis working with batch dequeue in
>>>>>>
>>>>> conjunction
>>>>
>>>>> with hiredis' pipeline commands.  In local tests this let me push
>>>>>>
>>>>> around
>>>>
>>>>> 250,000 redis commands per second to a redis instance (I was getting
>>>>>>
>>>>> around
>>>>
>>>>> 50k commands of the same type with the same test before the
>>>>>>
>>>>> changes).
>>>>
>>>>> Rainer - I'm hoping to wrap up this next round of improvements in a
>>>>>>
>>>>> few
>>>>
>>>>> days and get a patch your way!
>>>>>>
>>>>>> Brian
>>>>>> ______________________________**_________________
>>>>>> rsyslog mailing list
>>>>>> http://lists.adiscon.net/**mailman/listinfo/rsyslog<http://lists.adiscon.net/mailman/listinfo/rsyslog>
>>>>>> http://www.rsyslog.com/**professional-services/<http://www.rsyslog.com/professional-services/>
>>>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards
>>>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a
>>>>>>
>>>>> myriad
>>>>
>>>>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if
>>>>>>
>>>>> you
>>>>
>>>>> DON'T LIKE THAT.
>>>>>>
>>>>>>  ______________________________**_________________
>>>>> rsyslog mailing list
>>>>> http://lists.adiscon.net/**mailman/listinfo/rsyslog<http://lists.adiscon.net/mailman/listinfo/rsyslog>
>>>>> http://www.rsyslog.com/**professional-services/<http://www.rsyslog.com/professional-services/>
>>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards
>>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a
>>>>>
>>>> myriad of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST
>>>> if you DON'T LIKE THAT.
>>>>
>>>> ______________________________**_________________
>>>> rsyslog mailing list
>>>> http://lists.adiscon.net/**mailman/listinfo/rsyslog<http://lists.adiscon.net/mailman/listinfo/rsyslog>
>>>> http://www.rsyslog.com/**professional-services/<http://www.rsyslog.com/professional-services/>
>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards
>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a
>>>> myriad of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST
>>>> if you DON'T LIKE THAT.
>>>>
>>> ______________________________**_________________
>>> rsyslog mailing list
>>> http://lists.adiscon.net/**mailman/listinfo/rsyslog<http://lists.adiscon.net/mailman/listinfo/rsyslog>
>>> http://www.rsyslog.com/**professional-services/<http://www.rsyslog.com/professional-services/>
>>> What's up with rsyslog? Follow https://twitter.com/rgerhards
>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad
>>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you
>>> DON'T LIKE THAT.
>>>
>>
>> ______________________________**_________________
>> rsyslog mailing list
>> http://lists.adiscon.net/**mailman/listinfo/rsyslog<http://lists.adiscon.net/mailman/listinfo/rsyslog>
>> http://www.rsyslog.com/**professional-services/<http://www.rsyslog.com/professional-services/>
>> What's up with rsyslog? Follow https://twitter.com/rgerhards
>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad
>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you
>> DON'T LIKE THAT.
>>
>>  ______________________________**_________________
> rsyslog mailing list
> http://lists.adiscon.net/**mailman/listinfo/rsyslog<http://lists.adiscon.net/mailman/listinfo/rsyslog>
> http://www.rsyslog.com/**professional-services/<http://www.rsyslog.com/professional-services/>
> What's up with rsyslog? Follow https://twitter.com/rgerhards
> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad
> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you
> DON'T LIKE THAT.
>
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of 
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE 
THAT.

Reply via email to