you should be able to use global variables instead. no need for a plugin.
David Lang
On Sat, 23 May 2015, chenlin rao wrote:
Date: Sat, 23 May 2015 10:41:27 +0800
From: chenlin rao <[email protected]>
Reply-To: rsyslog-users <[email protected]>
To: rsyslog-users <[email protected]>
Subject: Re: [rsyslog] cee json + mmsequence
mmsequence is deprecated? So which plugin instead?
2015-05-22 21:15 GMT+08:00 singh.janmejay <[email protected]>:
Cool, thats the answer I was looking for.
On Fri, May 22, 2015 at 5:55 PM, Rainer Gerhards
<[email protected]> wrote:
2015-05-21 17:40 GMT+02:00 singh.janmejay <[email protected]>:
Are $/ variable manipulations supposed to be atomic?
It depends on what you mean with "atomic". The value returned should
be consistent, that for sure. But if you use
$/var = $/var + 1
Yes, I expect it to jump, but not get corrupted.
and $/var is 16 when this starts, the result can very well be 18 if
another thread executed the exact same sequence. I think for this use
there was an atomic increment function planned. I guess I never
implemented it, though.
Eg. $/var % 16 should never produce any number greater than 15, but it
does.
This will not be a problem if we use atomic read.
Since you have made it clear that the idea was to make it atomic(which
means this is a bug), I'll fix this.
as David said, that's a bug.
Are they non-atomic by design? If so, is mmsequence the right thing to
use (assuming it has atomic counters, I haven't checked if it really
does)?
mmsequence is deprecated.
There are few options on the table, I guess.
before I take a shot at these, let's see if we had the same
understanding of "atomic".
We do.
Rainer
1. If $/ variables are supposed to be atomic, we just fix the impl.
2. We use mmsequence, and keep it alive (assuming it has atomic
counters)
3. We fix mmsequence to implement atomic counters.
4. If $/ is not supposed to be atomic (by design), we implement $@
which is thread-local, so people can get atomic counters within thread
(evenness in data(for load-balancing or sampling kind of usecase) is
maintained by the fact that a single thread will pump a lot of
messages, so across all threads it'll approximately be as even as it
is in a single-thread.
5. We implement a random-number construct (which i believe either
mmsequence or mmcount had) which allows acceptable load-balancing or
sampling etc.
Thoughts?
On Wed, Dec 3, 2014 at 11:12 PM, David Lang <[email protected]> wrote:
On Wed, 3 Dec 2014, Brian Knox wrote:
So two questions then:
1. In the case of using mmjsonparse on messages where we do not know
ahead
of time what all the. json attributes will be, is there a var for a
place
in the tree where we can get all attributes that were in the cee
message?
There are three 'classes' of variables
$! are 'normal' variables, the place that mmjsonparse, etc put the
results
of parsing the cee message by default.
$. are 'local' variables, they are a place you can put stuff that you
don't
want to end up in a message when you output $!
$\ are 'global' variables, unlike the others, they persist from
message to
message.
All of these variables are a tree, where you can have $!foo!bar and
$!foo!baz. If you just reference $!foo it will output both bar and baz
as
JSON
so to see everything, parse the message and then output $!
2. If mmsequence is being deprecated, is there a pointer to how to
increment global variables to provide a sequence?
set $\var = $\var + 1;
3. This morning I remembered the "mmcount" module - is this also being
deprecated in favor of global variables?
probably.
David Lang
Brian
On Wed, Dec 3, 2014 at 3:52 AM, Rainer Gerhards <
[email protected]>
wrote:
2014-12-02 21:59 GMT+01:00 Brian Knox <[email protected]>:
We have a case where we are receiving messages in @cee: format, and
would
like to add a sequence variable generated via mmsequence to the
message.
Before I spend too much time digging into this I wanted to ask if,
using
some template hackery and json subtrees, this is something that
sounds
possible - and if maybe someone else was already doing it.
David has answered the real question, just let me add that
mmsequence was
a
work-around for v7 where global variables were not available. It is
now
deprecated and will probably removed in a couple of month.
I'll check the doc if it tells this clearly enough.
Rainer
Thanks!
Brian
_______________________________________________
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.
_______________________________________________
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.
_______________________________________________
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.
_______________________________________________
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.
--
Regards,
Janmejay
http://codehunk.wordpress.com
_______________________________________________
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.
_______________________________________________
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.
--
Regards,
Janmejay
http://codehunk.wordpress.com
_______________________________________________
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.
_______________________________________________
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.
_______________________________________________
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.