로그스태시를 통해 간단한 역할부터 복잡한 행동과 리턴을 주는 데몬 역할의 어플리케이션으로 사용할 수 있다. 장점으로는 데몬 제작이 아무리 간단하더라도 직접 데몬을 작성할 필요가 없으며, 동작은 간단히 conf파일에 구조화된 양식으로 설정을 적어주면 된다.

간단 설치와 사용법

간단하게 설치해서 사용할 수 있는 방법은 다음과 같다.

설치와 실행

webupd8team ppa에서 다운로드할 수 있다. 의존성 패키지는 java로, openjdk도 별 문제없이 실행할 수 있는 것으로 보인다. 다만 나는 항상 [[https://launchpad.net/~webupd8team)를 설치해서 사용했기 때문에 뭐 openjdk에서는 되지 않을 수도 있다. 자바를 설치한 후에 bin/logstash를 실행하면 된다.

데몬으로 설치와 실행

기본적으로 데몬 실행이 불가능하기 때문에 데몬으로 실행이 필요한 경우, elasticsearch의 ELK download페이지에서 deb 패키지나 rpm 패키지를 다운로드할 수 있다. 서비스로 실행 가능한 스크립트가 포함되어 있으므로 이 쪽을 설치하면 된다. 당연히 의존성은 같다.

간단한 설정

로그스태시의 설정으로 로그스태시 데몬을 원하는 방향으로 움직이게 할 수 있다. 크게 세 부분으로 나뉘는데 그것은 다음과 같다.

  • input : 로그스태시가 정보를 얻는 부분
  • filter : 인풋에서 들어온 정보가 처리되는 부분
  • output : 인풋과 필터를 거친 정보의 이동을 표시할 부분

따라서 이런 시나리오를 그려볼 수 있다. 만약 /tmp에 어떤 csv파일이 있고 이걸 파싱해서 화면에 보여주고 싶다면 대략 다음과 같은 형식의 설정을 작성해 볼 수 있다.

input {
    csv {
        path => "/tmp/some_csv.csv"
    }
}

filter {
    # 별다른 필터가 필요없이, 모두 사용한다고 가정하면 여기서는 할 게 없이 비워두어도 상관없다.
}

output {
    stdout {
        # stdout으로 출력한다.
    }
}

물론 input이 꼭 csv일 필요도 없고 또 output이 꼭 stdout일 필요가 없다. 사용해야 할 대부분은 기본 플러그인으로 준비되어 있으며 다음의 링크에서 그 내용을 확인할 수 있다.

상세 정보와 팁