나는 다음과 같은 로그가 :filebeat, logstash 및 elasticsearch를 사용하여 json 형식 로그를 kibana로 보내시겠습니까?
{"logId":"57aaf6c8d32fb","clientIp":"127.0.0.1","time":"03:11:29 pm","uniqueSubId":"57aaf6c98963b","channelName":"JSPC","apiVersion":"v1","modulName":null,"actionName":"apiRequest","typeOfError":"","statusCode":"","message":"In Auth","exception":"In Auth","logType":"Info"}
{"logId":"57aaf6c8d32fb","clientIp":"127.0.0.1","time":"03:11:29 pm","uniqueSubId":"57aaf6c987206","channelName":"JSPC","apiVersion":"v2","modulName":null,"actionName":"performV2","typeOfError":"","statusCode":"","message":"in inbox api v2 5","exception":"in inbox api v2 5","logType":"Info"}
나는 kibana
로 밀어합니다. 나는 다음과 같은 구성을 사용하여, logstash하는 데이터를 전송하는 filebeat을 사용하고 있습니다 :
filebeat.yml
### Logstash as output
logstash:
# The Logstash hosts
hosts: ["localhost:5044"]
# Number of workers per Logstash host.
#worker: 1
이제 다음과 같은 구성을 사용하여, 나는 코덱 타입 변경하려면 : 아직도 내가 문자열 형식으로 로그를 얻을
input {
beats {
port => 5000
tags => "beats"
codec => "json_lines"
#ssl => true
#ssl_certificate => "/opt/filebeats/logs.example.com.crt"
#ssl_key => "/opt/filebeats/logs.example.com.key"
}
syslog {
type => "syslog"
port => "5514"
}
}
을하지만, :
"message": "logId \": \ "57aaf6c96224b \", \ "clientIp \": \ "127.0.0.1 \", \ "time \": \ "03:11:29 \ "모듈 이름 \": null, \ "actionName \": \ "404 \", \ "typeOfError \": \ "채널 이름 \": \ "JSPC \", \ "apiVersion \": \ "EXCEPTION \", \ "statusCode \": 0, \ "message \": \ "404 페이지가 표시됨 http : \/\/localjs.com \/업로드 \/NonScreenedImages \/profilePic120/16 \/29 \ /15997002iicee52ad041fed55e952d4e4e163d5972ii4c41f8845105429abbd11cc184d0e330.jpeg \ ", \"LogType의 \는 \ "\"오류 \ "}",
도와주세요 내가 해결해.
은 다음 logstash 구성이 작동합니다'입력 { 비트 { 포트 => 5044 } } 경우 [태그] [JSON] { JSON 필터 { { 소스 => "메시지" } } } 출력 { elasticsearch { 호스트 => "로컬 호스트 : 9200" manage_template => 거짓 인덱스 => "% {[@ 메타] [때려]} - % {+ YYYY.MM.dd} " docume nt_type => "% {[@ 메타 데이터] [유형]}" } } ', 구성이 아닙니다. 도와 주셔서 감사합니다. – learner