C:\log 하위 디렉토리의 모든 로그를 가져와보자.
C:\log>dir /b/sC:\log\1001C:\log\1002C:\log\1003C:\log\1004C:\log\1005C:\log\1001\1001.logC:\log\1002\1002.logC:\log\1003\1003.logC:\log\1004\1004.logC:\log\1005\1005.logC:\log\1005\lastC:\log\1005\last\last.log
input { file { path => "c:/log/*/*.log" start_position => "beginning" sincedb_path => "nul" }}
filter { mutate { remove_field => [ "@timestamp", "@version", "host", "message" ] }}
output { stdout {}}
실행 결과는 이렇다. C:\log\1005\last 경로는 접근하지 못함.
[2021-10-30T19:59:02,048][INFO ][logstash.agent ] Pipelines running {:count=>1, :running_pipelines=>[:main], :non_running_pipelines=>[]}{ "path" => "c:/log/1001/1001.log"}{ "path" => "c:/log/1002/1002.log"}{ "path" => "c:/log/1003/1003.log"}{ "path" => "c:/log/1004/1004.log"}{ "path" => "c:/log/1005/1005.log"}
2단계 이상의 하위 디렉토리에 접근하려면 재귀 접근을 지원하는 ** 패턴을 사용해야 한다. 설정 변경.
file { path => "c:/log/**/*.log" start_position => "beginning" sincedb_path => "nul" }
C:\log\1005\last 경로 접근 성공.
[2021-10-30T20:00:18,937][INFO ][logstash.agent ] Pipelines running {:count=>1, :running_pipelines=>[:main], :non_running_pipelines=>[]}{ "path" => "c:/log/1001/1001.log"}{ "path" => "c:/log/1002/1002.log"}{ "path" => "c:/log/1003/1003.log"}{ "path" => "c:/log/1004/1004.log"}{ "path" => "c:/log/1005/1005.log"}{ "path" => "c:/log/1005/last/last.log"}
filebeat
beat 역시 로그스태시와 똑같이 동작한다. 다음 설정은 1단계 하위 디렉토리만 접근 가능
filebeat.inputs:- type: log enabled: true paths: - c:\log\*\*.log
{ "@timestamp": "2021-10-30T11:03:38.449Z", "@metadata": { "beat": "filebeat", "type": "_doc", "version": "7.15.0" }, "log": { "file": { "path": "c:\\log\\1001\\1001.log" } }}{ "@timestamp": "2021-10-30T11:03:38.449Z", "@metadata": { "beat": "filebeat", "type": "_doc", "version": "7.15.0" }, "log": { "file": { "path": "c:\\log\\1002\\1002.log" } }}{ "@timestamp": "2021-10-30T11:03:38.449Z", "@metadata": { "beat": "filebeat", "type": "_doc", "version": "7.15.0" }, "log": { "file": { "path": "c:\\log\\1003\\1003.log" } }}{ "@timestamp": "2021-10-30T11:03:38.450Z", "@metadata": { "beat": "filebeat", "type": "_doc", "version": "7.15.0" }, "log": { "file": { "path": "c:\\log\\1004\\1004.log" } }}{ "@timestamp": "2021-10-30T11:03:38.450Z", "@metadata": { "beat": "filebeat", "type": "_doc", "version": "7.15.0" }, "log": { "file": { "path": "c:\\log\\1005\\1005.log" } }}
다음 설정은 2단계 이상 접근 가능.
filebeat.inputs:- type: log enabled: true paths: - c:\log\**\*.log
{ "@timestamp": "2021-10-30T11:15:04.639Z", "@metadata": { "beat": "filebeat", "type": "_doc", "version": "7.15.0" }, "log": { "file": { "path": "c:\\log\\1001\\1001.log" } }}{ "@timestamp": "2021-10-30T11:15:04.639Z", "@metadata": { "beat": "filebeat", "type": "_doc", "version": "7.15.0" }, "log": { "file": { "path": "c:\\log\\1002\\1002.log" } }}{ "@timestamp": "2021-10-30T11:15:04.639Z", "@metadata": { "beat": "filebeat", "type": "_doc", "version": "7.15.0" }, "log": { "file": { "path": "c:\\log\\1003\\1003.log" } }}{ "@timestamp": "2021-10-30T11:15:04.640Z", "@metadata": { "beat": "filebeat", "type": "_doc", "version": "7.15.0" }, "log": { "file": { "path": "c:\\log\\1004\\1004.log" } }}{ "@timestamp": "2021-10-30T11:15:04.640Z", "@metadata": { "beat": "filebeat", "type": "_doc", "version": "7.15.0" }, "log": { "file": { "path": "c:\\log\\1005\\1005.log" } }}{ "@timestamp": "2021-10-30T11:15:04.640Z", "@metadata": { "beat": "filebeat", "type": "_doc", "version": "7.15.0" }, "log": { "file": { "path": "c:\\log\\1005\\last\\last.log" } }}
관련 글
댓글 없음:
댓글 쓰기