im_file
nxlog를 사용하여 입력 모듈과 감시할 정확한 파일을 지정하는 패턴을 사용하여 vCenter 메시지를 Logstash에 전달하려고 합니다 . vCenter의 로그 순환이 로그를 압축한 다음 다음 로그 파일이 생성될 때 파일 이름을 증가시키므로 일반적으로 간단했던 것이 이제는 불필요하게 복잡해졌습니다. 예를 들어:
vpxd-1.log -> vpxd-1.log.gz -> vpxd-2.log
vCenter vpxd.log 로그의 메시지를 전달하고 싶습니다.
*vpxa(\.log|\.\d+(\.gz)?|-\d+\.log(\.gz)?)
답변1
vCenter 로그는 ESXi 로그와 형식이 다르기 때문에 nxlog 대신 Logstash를 사용하기로 결정했습니다. vCenter 메시지를 ESXi 메시지와 유사한 형식으로 변환하기 위해 전달자에 로컬 필터를 설정하겠습니다.
Logstash를 Windows 서비스로 실행하는 방법에 대한 자세한 내용은 이 가이드를 참조하세요.
서비스 구성:
C:
cd \logstash
set HOME=c:/logstash/sincedb
"C:\Program Files\Java\jdk1.7.0_45\bin\java.exe" -jar logstash-1.2.2.jar agent --config logstash.conf --log logstash.log
Logstash 구성:
input {
file {
path => [ "C:/vmware_logs/vpxd-[0-5][0-9].log", "C:/vmware_logs/vpxd-alert-[0-5][0-9].log" ]
type => "syslog"
exclude => "*.gz"
}
}
output {
udp {
host => "<address>"
port => "514"
}
stdout {
debug => true
}
}