2016-08-17 3 views
2

나는 logstash, elastic search 및 kibana를 설치 한 10.x.x.1에 단일 노드 ELK를 설정했습니다.logstash를 사용하여 로그를 탄성 검색으로 보내기

내 응용 프로그램을 다른 서버 10.x.x.2에서 실행하고 내 기록을 탄성 검색으로 전달하고 싶습니다.

제가 /etc/logstash/conf.d이 입력을 제공 10.xx1에서 10.xx2

내 로그 파일 /var/log/myapp/myapp.log

input { 
    file { 
    path => "/var/log/myapp/myapp.log" 
    type => "syslog" 
    } 
} 

output { 
    elasticsearch { 
     hosts => ["10.252.30.11:9200"] 
     index => "versa" 
    } 
} 

내 질문에 내가에만 선이 "오류",536있는을 위해 내가 grep을 어떻게 10.xx2

  • 에 logstash를 설치해야

    1. 가 수행 이하 같다
    2. 매일 내 앱에서 크기가 10MB 인 로그가 생성됩니다. 나는 공간 검색을 위해 탄성 검색에 하나 이상의 노드를 추가 할 수 있는지 알고 싶습니다.
    3. 내 기록을 신축성있는 검색에 영구히 보관하고 싶지 않습니다. 보내는 로그에 만료 시간을 설정할 수있는 방법이 있습니까? , 즉 7 일 후에 로그를 삭제하십시오.
  • +0

    칠일 (쉽게 elasticsearch curator으로 수행하고 cron 작업) 후 인덱스를 삭제하는 것입니다 '10.xx1이 아닙니다. –

    +0

    게시물에 두 개 이상의 질문을하지 말아야합니다. – baudsp

    답변

    3

    난 당신이 적어도 Logstash 중 하나 (하지 않는 것이 좋습니다) 또는 Filebeat 또는 10.x.x.2에 Packetbeat 설치해야 1, 2

    • 응답 할 수 있습니다. Filebeat 또는 Packetbeat는 모두 Elastic.co에서 무료로 제공됩니다. Packetbeat은 로그 파일이 아닌 네트워크를 통해 앱 로그를 캡처하는 데 사용됩니다. 귀하의 경우, 파일 로그를 사용하여 Filebeat를 사용하십시오.
    • 당신은 10 일 10.xx1

    filebeat: prospectors: - paths: - /var/log/myapp/myapp.log

    그리고

    logstash: hosts: ["10.x.x.1:5044"]

    • (filebeat .yml)촬영에의 로그를 Filebeat 구성 파일을 편집해야합니다. xx1, Logstash를 설치 한 곳)는 ELK 아케, 당신은 Logstash에 대한 몇 가지 설정 파일을 작성해야

      • /etc/logstash/conf.d/

      input { beats { port => 5044 ssl => false } }

      • 02-beats-input.conf라는 이름의 입력 파일을 추가 /etc/logstash/conf.d/03-myapp-filter.conf라는 필터 파일을 추가 . 로그와 일치하는 필터 패턴을 찾아야합니다. 2의
    +0

    Packetbeat은 현재 사용 사례와 관련이 없습니다. 혼란을 피하기 위해 그 언급을 제거해야합니다. – baudsp

    +0

    @baudsp,이''myapp'''가 packetbeat 지원 프로토콜 (dns, http, memcache, mysql, ...)인지 아닌지는 잘 모르겠습니다. 나는 나의 대답을 업데이트했다. – Tuan

    +0

    OP가 로그 파일에 대해 명시 적으로 질문했기 때문에 "응용 프로그램 서버간에 네트워크 트래픽을 캡처하고 응용 프로그램 계층 프로토콜을 디코딩하는 소프트웨어"([source] (https://www.elastic.co/) guide/en/beats/packetbeat/current/packetbeat-overview.html))이 그에게 유용 할 것입니다. – baudsp

    1

    : Elasticsearch에 웹 인터페이스로

    키바의 역할을합니다.일단 시작되면 기본적으로 포트 5601에서 사용할 수 있습니다. 그런 다음 검색 인터페이스를 사용하여 "오류"와 같은 용어를 검색 할 수 있습니다. 이 용어로 처음 500 개의 문서가 반환됩니다. 3

    :

    또 다른 Elasticsearch 노드 사이에 데이터를 분산 할 수 있습니다. 그러나 노드는 문제없이 몇 기가 헤르쯔를 쉽게 다룰 수 있습니다.

    4 :

    데이터에 만료 날짜를 설정할 수 없습니다. 최소한 자동으로 실행되지는 않습니다. 오늘 만료되는 모든 로그를 검색하고 삭제해야합니다.
    또 다른 해결책 (하나 더)는 (index => "versa-%{+YYYY.MM.dd}"와) 하루에 한 인덱스를 가지고 당신은`10.xx2에 LS 필요

    관련 문제