Назад | Перейти на главную страницу

NxLog удалить файл после обработки

Я хотел бы удалить файл журнала после обработки, что я сделал:

<Extension multiline>
    Module      xm_multiline
    Exec        if $raw_event =~ /^\s*$/ drop();
    HeaderLine  /Debut du job/
</Extension>

<Input in1>
    Module      im_file
    File        '/opt/appl/appli/logs/*.nxlog'
    InputType   multiline
    Exec        $nxlog_message = $raw_event;
    Exec        $nxlog_tags = "appli";
    Exec        $nxlog_hostname = hostname();
    Exec        $nxlog_filename = file_name();
    Exec        to_json();
</Input>

<Extension exec_out>
    Module      xm_exec
</Extension>


<Output fileout1>
     Module      om_file
     File        "/tmp/test.log"
     Exec        exec_async("/bin/rm" + $nxlog_filename);
</Output>

Пока ничего не произошло… Жду идеи.

Спасибо за помощь :)

Я думаю, проблема в том, что exec_async () не должны получать аргументы, связанные с командой, т.е. вам нужно это вместо этого:

Exec        exec_async("/bin/rm", $nxlog_filename);

Я бы рекомендовал использовать встроенный file_remove () вместо того, чтобы призывать / bin / rm.