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.

Reply via email to