[syslog-ng] is it possible to use if() ... else statements on syslog-ng 3.7?
Jorge Pereira
jpereiran at gmail.com
Wed May 10 22:50:50 UTC 2017
Hi Balazs,
Sorry, But I didn't get your suggestion as well. do you mind to be more
clearly?
--
Jorge Pereira
On Wed, May 10, 2017 at 3:42 AM, Balazs Scheidler <bazsi77 at gmail.com> wrote:
> I think we have a $(/ $R_MIN 5) template function for integer division,
> likewise we have multiplication as well, which you can use to achieve the
> same a lot easier.
>
> On May 9, 2017 19:41, "Jorge Pereira" <jpereiran at gmail.com> wrote:
>
>> My approach is:
>>
>> rewrite {
>> # e.g: 20170417/1000PM
>> set("00", value("min_slice"), condition("$R_MIN" >= "0"));
>> set("05", value("min_slice"), condition("$R_MIN" >= "5"));
>> set("10", value("min_slice"), condition("$R_MIN" >= "10"));
>> set("15", value("min_slice"), condition("$R_MIN" >= "15"));
>> set("20", value("min_slice"), condition("$R_MIN" >= "20"));
>> set("25", value("min_slice"), condition("$R_MIN" >= "25"));
>> set("30", value("min_slice"), condition("$R_MIN" >= "30"));
>> set("35", value("min_slice"), condition("$R_MIN" >= "35"));
>> set("40", value("min_slice"), condition("$R_MIN" >= "40"));
>> set("45", value("min_slice"), condition("$R_MIN" >= "45"));
>> set("50", value("min_slice"), condition("$R_MIN" >= "50"));
>> set("55", value("min_slice"), condition("$R_MIN" >= "55"));
>>
>> # final macro
>> set("${YEAR}${MONTH}${DAY}-${HOUR12}${min_slice}${AMPM}",
>> value("logfmt_file"));
>> set("${YEAR}${MONTH}${DAY}/${HOUR12}${min_slice}${AMPM}",
>> value("logfmt_dir"));
>> };
>>
>> --
>> Jorge Pereira
>>
>> On Tue, May 9, 2017 at 4:00 AM, James Elstone <james at elstone.net> wrote:
>>
>>> Hi,
>>>
>>> Are multiple channel{} commands processed in parallel or sequentially?
>>>
>>> Kr,
>>>
>>> James
>>>
>>>
>>> On 9 May 2017 07:20:05 BST, "Scheidler, Balázs" <
>>> balazs.scheidler at balabit.com> wrote:
>>>>
>>>> This is possible, but with quite ugly syntax. I always wanted to add
>>>> some syntactic sugar, but never got around to do it.
>>>>
>>>> It looks like this:
>>>>
>>>> junction {
>>>> channel {
>>>> # if, with conditions specified as filters
>>>> filter { whatever... };
>>>> destination { whatever };
>>>> flags(final);
>>>> };
>>>> channel {
>>>> # else, you can add filters as well
>>>> destination { something else };
>>>> flags(final);
>>>> };
>>>> };
>>>>
>>>> The key parts:
>>>> * This can be embedded to any log statement as it is
>>>> * It uses inline filters and destinations, but you can use other
>>>> definitions by using simple parens instead of braces.
>>>> * flags final which causes processing to be stopped at the first match.
>>>> Without that, you'd be duplicating messages, if the conditions overlap.
>>>> * You can add any number of channels, you are not limited to one
>>>> if/else construct. It is more like a filter based switch with multple
>>>> potential branches.
>>>>
>>>> Hope this helps,
>>>>
>>>>
>>>> On May 9, 2017 01:03, "Jorge Pereira" <jpereiran at gmail.com> wrote:
>>>>
>>>>> Ops! The documentation explaining only to use with templates.
>>>>>
>>>>> Basically, I am looking for how to do the below pseudo-code.
>>>>>
>>>>> destination {
>>>>> if ($R_MIN >= 0 && $R_MIN < 30)
>>>>> file("/path/file_00m-15m.log");
>>>>> else
>>>>> file("/path/file_30m-60m.log");
>>>>> endif()
>>>>> };
>>>>>
>>>>> p.s: I need to save the logs in chunks of 30 minutes being 00m-30m &
>>>>> 31m-60m
>>>>>
>>>>> --
>>>>> Jorge Pereira
>>>>>
>>>>> On Mon, May 8, 2017 at 7:52 PM, Jorge Pereira <jpereiran at gmail.com>
>>>>> wrote:
>>>>>
>>>>>> never mind, I found it.
>>>>>>
>>>>>> https://www.balabit.com/documents/syslog-ng-ose-latest-guide
>>>>>> s/en/syslog-ng-ose-guide-admin/html/reference-template-functions.html
>>>>>>
>>>>>> --
>>>>>> Jorge Pereira
>>>>>>
>>>>>> On Mon, May 8, 2017 at 7:46 PM, Jorge Pereira <jpereiran at gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> hi team,
>>>>>>> is it possible to use if() ... else statements on syslog-ng 3.7? I
>>>>>>> am trying to do something like.
>>>>>>>
>>>>>>> if ($value >= X)
>>>>>>> ......
>>>>>>> else
>>>>>>> ......
>>>>>>> --
>>>>>>> Jorge Pereira
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> ____________________________________________________________
>>>>> __________________
>>>>> Member info: https://lists.balabit.hu/mailman/listinfo/syslog-ng
>>>>> Documentation: http://www.balabit.com/support
>>>>> /documentation/?product=syslog-ng
>>>>> FAQ: http://www.balabit.com/wiki/syslog-ng-faq
>>>>>
>>>>>
>>>>>
>>> --
>>> Sent from my Android device with K-9 Mail. Please excuse my brevity.
>>>
>>> ____________________________________________________________
>>> __________________
>>> Member info: https://lists.balabit.hu/mailman/listinfo/syslog-ng
>>> Documentation: http://www.balabit.com/support
>>> /documentation/?product=syslog-ng
>>> FAQ: http://www.balabit.com/wiki/syslog-ng-faq
>>>
>>>
>>>
>>
>> ____________________________________________________________
>> __________________
>> Member info: https://lists.balabit.hu/mailman/listinfo/syslog-ng
>> Documentation: http://www.balabit.com/support/documentation/?product=
>> syslog-ng
>> FAQ: http://www.balabit.com/wiki/syslog-ng-faq
>>
>>
>>
> ____________________________________________________________
> __________________
> Member info: https://lists.balabit.hu/mailman/listinfo/syslog-ng
> Documentation: http://www.balabit.com/support/documentation/?
> product=syslog-ng
> FAQ: http://www.balabit.com/wiki/syslog-ng-faq
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.balabit.hu/pipermail/syslog-ng/attachments/20170510/b47973f7/attachment-0001.html>
More information about the syslog-ng
mailing list