2017-03-20 1 views
0

모두에게 도움이 필요합니다. Telegraf를 현재 InfraStDB 데이터베이스의 로그 피더로 사용하고 있습니다. 개념은 내 Telegraf가 로그를 읽고 InfluxDB에 결과를 보냅니다.매일 변경되는 동적 logname에 대해 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.20170320.log"] 
files = ["/here/is/the/directory/logname.20170321.log"] 

감사 :

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

그래서 이름이 동적으로처럼 매일 변화하는 일일 로그를 읽을 수 있습니다 : 당신이 마음을 수행하는 방법에 대한 올바른 구성입니다.

+1

로그 파일 이름을 현재 날짜로 매일 변경하는 스크립트를 작성할 수 있습니다. – Luv33preet

+0

통찰력을 위해 @ Luv33preet 감사합니다. 이미 아이디어를 구현했으며 완벽하게 작동합니다. 고마워. – regex

답변

0

는 @의 Luv33preet 코멘트 here을 바탕으로, 그럼 내가 스크립트가 나오지 사용하여 매일 구성을 변경할 수 있도록, 여기에 코드입니다 :

/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 
관련 문제