On Mon, Oct 21, 2013 at 12:43 PM, David Lang <[email protected]> wrote: > On Mon, 21 Oct 2013, Rainer Gerhards wrote: > > On Mon, Oct 21, 2013 at 12:32 PM, David Lang <[email protected]> wrote: >> >> On Mon, 21 Oct 2013, Rainer Gerhards wrote: >>> >>> >>>>>> That previous discussion was wrong, it is $$!var!var - and it does not >>>>>> give >>>>>> the ref to $var, but it's value. >>>>>> >>>>>> >>>>>> hmm, I had a problem where I was trying to set var2 = $$!var1 and >>>>> then >>>>> delete var1 and the result was that once var1 was deleted, var2 had no >>>>> value, if var1 wasn't deleted, var2 had a value. when I posted about >>>>> it, >>>>> I >>>>> was told to change $$ to $ (I'll have to go back and dig up the e-mail >>>>> for >>>>> the exact syntax that I used), and changing to a single $ on the right >>>>> side >>>>> caused everything to work properly after var1 was deleted. >>>>> >>>>> >>>> >>>> yeah, that's a big confusion that I created, sorry for that. If you look >>>> at >>>> git logs, you'll even see that there are a couple of regression fixes >>>> undoing what an other one did which than got undone... This is what I >>>> checked this morning when I remembered that there was something in this >>>> area recently. I *think* the bottom problem is that I did not fully obey >>>> the $<propname> rule, and after initial review it looks so (and so I did >>>> another regression fix that undoes what the previous one did, and I am >>>> 98% >>>> sure it is right this time). Get to understand with what I mean with "I >>>> need a break and the code propbably some refactoring"? >>>> >>>> >>> Yep, this sounds like something for you to fix tomorrow, or at least >>> after >>> you have taken a break to clear your mind. People are just starting to >>> try >>> and use this, but once they start using it, changing it will break >>> configs. >>> right now the documentation (on rsyslog.com and the ;login article) all >>> use a single $. so my tendancy would be to make the docs work :-) but if >>> this can't be done, now is the time to change things, we just need to >>> make >>> things consistant between the three variable classes >>> >>> >> >> consistency depends on how you look at it :-( >> >> if we support $/zz for global var and $msg in script (instead of $$/zz), >> the string templates are inconsistent, because they have $/zz and "msg". >> The core idea when I wrote the script engine was that $ prefixes >> properties, so that this goes along with the documented properties. If we >> change that, we need to use different property names in templates and >> script :-( >> >> but... I think I won't discuss this any further today, bears not fruit in >> my state of mind ;) >> > > for you to think about tomorrow :-) > > you already have > > template > > %hostname% > %$myhostname% > %$!% > > and script > > $hostname > $myhostname (instead of $$myhostname) > $! > > sorry, I haven't been clear (how could I ;)). It depends a bit on the patch level, but in script it should be (and is in many versions)
$hostname $$myhostname $$! so it is consistent. All please note that the whole discussion centers around -devel branch stuff, so for stable nothing yet is problematic. > so while I don't really like the template stuff not matching the scripting > stuff, it's already inconsistent, and I think it's better to be consistent > within the scripting than to have some of them be $<what you would use in a > template> and some consolodating $$ into $ > > right > right now the parser can deal with things with a single $ without any > ambiguity, you are unlikely to add many more properties, so it's unlikely > to get significantly worse. not really -- this is the cause for the confusion. The parser does not properly handle it. If the $myhostname syntax is "supported" other things are broken - Pavel's initial sample is the indication of this. I would need to refactor the code to be aware of the syntax inconsistence and handle it properly. Rainer > > > David Lang > ______________________________**_________________ > 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.

