Logstash를 처음 사용했습니다. 방금 작업을 시작했습니다. 좋은 튜토리얼을 찾지 못했습니다. 그래서 여기에 내 질문을 게시하고 있습니다. Logstash - 기본 Grok 패턴이 작동하지 않습니다.
input {
file{
path => "C:/software/logstash-5.3.0/logstash-5.3.0/bin/test1.txt"
type => "Text File"
start_position => "beginning"
}
}
filter {
grok {
match => [ "message", "%{WORD:File Name} %{WORD:Method Name} %{NUMBER:testing Number} %{NUMBER:testing second number}" ]
}
}
output{
file {
path => "C:/software/logstash-5.3.0/logstash-5.3.0/bin/test_op1.txt"
codec => line { format => "File Name is: %{File Name} and Method Name is: %{Method Name}"
}
}
stdout {}
}
나는 구글 검색에서 몇 가지 예를보고하여이 conf의 파일을 만든 :
나는 기본 conf의 파일이 있습니다. 난 그냥 Logstash 여기에 어떻게 작동하는지 이해하기 위해 노력하고 TESTFILE testMethod (123) (345):
는내 입력 파일은 한 줄이 포함되어 있습니다.
위의 conf 파일과 입력 파일을 사용하여 logstash를 실행했습니다. 성공적으로 실행되기 시작했습니다. "testFile testMethod 123 345"가 콘솔에 인쇄되었습니다. "파일 이름 : % {파일 이름} : 메서드 이름 : % {메서드 이름} "이 출력 파일에 인쇄되었습니다. 반면에 예상되는 출력은 "파일 이름 : testFile이고 메소드 이름은 testMethod"입니다.
구성 파일의 출력에 codec => rubydebug를 추가하면 출력이 이미지로 첨부됩니다. output
제게 잘못 생각한 부분을 알려주십시오. 패턴 파일을 생성해야합니까 아니면 grok에 대한 기본 패턴 파일이 있습니까?
모든 도움을 주시면 감사하겠습니다.
감사합니다.
이 [elastic.co 지원 스레드] (https://discuss.elastic.co/t/discover-field-names-with-spaces/37467/4)에 기반하여, 나는 낙담 할 것입니다. 공백을 사용하고 필드 이름에 일관성이없는 대문자 사용 전략을 사용하십시오 –
'stdout {codec => "rubydebug"}'와 함께 실행하여 질문에 결과를 추가하십시오. –
결과를 이미지로 질문으로 추가했습니다. –