Log-Files

NxLog 處理後刪除文件

  • December 16, 2015

我想在處理後刪除日誌文件,我做了什麼:

<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*。

引用自:https://serverfault.com/questions/743485