2017-04-11 14 views
0

X-Pack, Elasticsearch & Logstash이 설치되어 있습니다. Logstash는 X-Pack의 모니터링 부분에 대해 elasticsearch에보고합니다.X-Pack & Logstash - 탄성 검색에 출력이 없습니다.


이제 logstash가 elasticsearch에 파이프로 전달되는 모든 비트를 통과 시키길 원합니다.


I는이 가이드 here 따라 상기 언급 된 사용자 & 역할을 만들었다. 앞서 언급 한 권한을 가지며 동일한 사용자 (예 : filebeat-*)에 역할을 할당 한 각 비트 유형에 대해 here의 정보를 사용하여 역할을 추가로 만들었습니다. 내가 (예를 들어, filebeat에 대한) 만든 파일을 얻고있다

input { 
    beats { 
    port => 5044 
    } 
} 
output { 
    elasticsearch { 
    hosts => ["http://localhost:9200"] 
    index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}" 
    document_type => "%{[@metadata][type]}" 
    user => "user" 
    password => "pass-word" 
} 
    file { 
    path => "C:\temp\%{[@metadata][beat]}-%{+YYYY.MM.dd}.log" 
} 
} 

하지만 elasticsearch에있는 인덱스가 생성되지 않으며 데이터가 elasticsearch에 나타납니다 : 내 logstash.conf

은 다음과 같습니다.

구성에 문제가 있는지 누가 알 수 있습니까? 나는 오류/해법을 찾기 위해 여러 시간을 보냈다.

언급 한 사용자를 사용하여 Publishing이 elasticsearch (Logstash없이)에서 직접 작동하는 경우 (예 : metricbeat 사용). 필터 "{수신 - 53.807은 [주]> worker0] 디버그 logstash.pipeline는 :

07 : 52

또한 단순히 탄성에 출력 누락 로그 이상한 것을 표시되지 이벤트 "=> {...}}
07 : 52 : 53.807 DEBUG logstash.pipeline - 필터 수신 {"이벤트 "=> {...}}
07 : 52 : 53.807 [main> worker0] DEBUG logstash.pipeline - 출력이 수신 됨 { "event"=> {...}}
07 : 52 : 53.807 [main]> worker0] DEBUG logstash.pipeline - 출력이 수신 됨 { "event "=> {...}}
07 : 52 : 53.8 70 [main]> worker0] DEBUG logstash.outputs.file - 파일에 이벤트를 쓰는 파일. {: filename => "C : /temp/filebeat-2017.04.11.log"}
07 : 52 : 53.870 [main]> worker0] DEBUG logstash.outputs.file - 파일에 이벤트를 쓰는 파일입니다. {: filename => "C : /temp/filebeat-2017.04.11.log"}
07 : 52 : 53.870 [main]> worker0] 정보 logstash.outputs.file - 파일 열기 {: 경로 => "C : /temp/filebeat-2017.04.11.log "}
07 : 52 : 53.870 [main]> worker0] DEBUG logstash.outputs.file - 오래된 파일 정리주기 시작 {: files => {"C :/temp/filebeat-2017.04.11.log "=> #>}}}
07 : 52 : 53.870 DEBUG logstash.outputs.file - 오래된 파일이 발견됨 {: inactive_files => {}}


고맙습니다!


UPDATE :

내가 암호를 변경하는 경우, 나는 logstash 로그에 다음과 같은 오류 얻을 :

08 : 22 : 33.877 [[주]> worker1에] 오류를 logstash.outputs.elasticsearch - 서버에서 잘못된 응답 코드를 받았지만이 코드는 다시 시도 할 수없는 것으로 간주됩니다. 요청은 삭제됩니다. {: code => 401, : response_body => "{\"오류 \ ": {\"root_cause \ ": [{\"type \ ": \"security_exception \ ", \"reason \ ": \ "보안 영역 \\"charset = \\ "REST 요청에 대해 사용자를 인증 할 수 없습니다.", \ "헤더 \": \ "WWW- 인증 \": \ "기본 영역 = \\" \ "type \": \ "security_exception \", \ "reason \": \ "REST 요청을 위해 사용자 [beat]를 인증 할 수 없습니다. \", "UTF- 기본 영역 = \\ "보안 \\"charset = \\ "UTF-8 \\"\ "}}, \"상태 \ ": 401"\ "헤더 \": } ": request_body는 =>"{\ "인덱스 \": {\ "_ 아이디 \"널 (null), \ "_ 지수 \"

는 그래서 elasticsearch와 통신 실제로 것 같다,하지만 지수는하지 않습니다 불행히도 탄력성 검색 로그에는 아무런 진술이 없습니다.

답변

0

비슷한 문제로 어려움을 겪고있는 사람들에게 내 대답을 찾았습니다.

색인을 만들 수없는 action.auto_create_index에 관한 elasticsearch.yml에 관한 이상한 설정이 있습니다.

elasticsearch의 로그 수준을 debug으로 변경하면 표시됩니다. here.

필요하지 않았기 때문에 제거하고 예상대로 작동합니다.