2017-03-20 92 views
0

大家,請幫忙。 我現在使用telegraf作爲我的InfluxDB數據庫的日誌進紙器,這個概念是我的telegraf將讀取一個日誌,然後將結果發送到InfluxDB。如何使用telegraf解析每日更改的動態日誌名稱的日誌?

[[inputs.logparser]] 
files = ["/here/is/the/directory/logname.log"] 
from_beginning = false 

它在日誌文件名爲logname.log時按預期工作。但是,今天我需要將日誌名稱系統更改爲logname.20170320.log,其中20170320是日誌日期。你介意,怎樣是正確的配置:

files = ["/here/is/the/directory/logname.log"] 

所以它可以讀取每天的日誌的名稱動態地改變日常生活,如:

files = ["/here/is/the/directory/logname.20170320.log"] 
files = ["/here/is/the/directory/logname.20170321.log"] 

感謝您的幫助。

+1

您可以編寫一個腳本,每天將日誌文件名更改爲當前日期。 – Luv33preet

+0

感謝@ Luv33preet的洞察力,我已經實現你的想法,並且它的工作完美。非常感謝。 – regex

回答

0

基於@ Luv33preet評論here,然後我做一個腳本來每天都在變化的配置使用SED,這裏是代碼:

/bin/sed -i "s/`date +'%Y%m%d' -d '1 day ago'`/`date +'%Y%m%d'`/" /etc/telegraf/conf.d/my-config.conf 

要更改telegraf配置。

-1

爲什麼你只是爲你的日誌文件設置通配符?

[[inputs.logparser]] 
    /var/log/*/*.log -> find all .log files with a parent dir in /var/log 
    from_beginning = false