Thank you for getting back. Makes sense. One more question related to this.
If we dont need logs in the order they were received, then what is
beneficial - multiple threads in ruleset queue vs multiple threads in
action queue. I read your blog but still have some doubts.
Assume we don’t need any filtering. And there are 2 omfwd actions sending
logs to tcp destinations within the ruleset.
In this scenario - should i create a ruleset queue with 4 threads(example)
or create the actions each with 2 threads(example).
Or is there a benefit to having both. Of course am assuming large mps like
500k.

Regards,
Sid

On Wed, Apr 7, 2021 at 12:51 AM Rainer Gerhards <[email protected]>
wrote:

> The actions are simply far too fast to see any difference. For that
> case, a queue would just add overhead. It's not for actions that fast.
>
> HTH
> Rainer
>
> El mié, 7 abr 2021 a las 5:02, siddhartha dewan via rsyslog
> (<[email protected]>) escribió:
> >
> > Hi,
> > this is my 1st time reaching out to the public community - so pls advise
> if
> > am doing something wrong.
> > My question is related to ruleset queues and parallelism. After reviewing
> > all the documentation on queues and reading them multiple times - the
> whole
> > idea behind the queue with a fixed or linked list was to introduce
> > asynchronous processing of actions within the ruleset which also helps
> with
> > handling costly filter logic.
> >
> > In order to test the benefits of queues - i created a simple ruleset
> > without a queue 1st:
> > ruleset(name="test") {
> > action(type="omfile" file="/var/log/mtu3.log")
> > action(type="omfile" file="/var/log/mtu4.log")
> >  }
> >
> > As per the documentation - my expectation was - because i didn't define
> any
> > queues - the action would be processed synchronously - or - it will be
> > processed 1 after another. Meaning - all the syslog packets will be
> stored
> > in the main queue - which then will invoke the 1st action and once the
> 1st
> > action is complete - it will then invoke the 2nd action.
> >
> > To my surprise - the data was written in parallel to both these files.
> And
> > now i am totally confused - if the data is being written in parallel -
> how
> > exactly is the cpu thread working:
> > is it writing to both files at once? If yes - then what really is the
> > benefit of a dedicated queue?
> > In the documentation - the biggest benefit seems to be avoiding a slow
> > output - and also helping provide parallel threads to do work while
> > increasing performance.
> >
> > Yes - I understand that the slow output will eventually cause a backlog
> in
> > the main queue causing the entire rsyslog to hang - but is that the only
> > benefit of a queue? Performance doesnt really seem to be a benefit if the
> > main queue can already do things in parallel - till rsyslog eventually
> > hangs due to backlog.
> >
> > Your team has done an awesome job helping out with an open source
> solution.
> > Pls keep it up.
> > _______________________________________________
> > rsyslog mailing list
> > https://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.
>
_______________________________________________
rsyslog mailing list
https://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