Hi Balázs,

Thanks for the answer. But, My question is: It is possible to include a external python script.

e.g:

$ cat foobar.conf:

python {
   @include "caipirinha.py"
}

template-function foobar "$(python foobar)"

$ cat caipirinha.py
from foobar import foobar_template_function
# my python class/code is separated
...........

$

got it? maybe using the "confgen" module?
--
Jorge Pereira

On Mon, Mar 20, 2017 at 2:35 AM, Scheidler, Balázs <balazs.scheidler@balabit.com> wrote:
Hi,

The example Python code should be unindented, or you see a different error?

Also, you can always import code in the python block.

With destinations you can specify a path to a python file, so the python block is not needed. But with template functions I've figured the $(python) call would be too crowded if we were passing explicit filename parameters.

But you can encapsulate the python code as well as a wrapper to the python code into a separate file.

Foobar.conf:

python {

from foobar import foobar_template_function

}

template-function foobar "$(python foobar)"

----------

Then you can use:

@include "Foobar.conf"

...
template("$(foobar)");
...

Unfortunately then template function declarations cant take parameters yet from the callsite, which may be a serious limitation in your use-case. But with a conceot above you can completely hide implementation details your actual config.

On Mar 20, 2017 03:53, "Jorge Pereira" <jpereiran@gmail.com> wrote:
Well, based on this[1] document. We should use the python {} statement. But, I would like to keep my python script externally in a separated file and do something like.

python filter_001 {
   /my/script/python001.py

______________________________________________________________________________
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