목록Filter (4)
준호씨의 블로그
집에서 브리타 플로우 8.2L 정수기를 사용하고 있습니다. 꽤 오랜 기간 사용했는데요. (지난 기록을 찾아보니 2020.05.21 이전으로 보임) 필터 교체 시기를 확인하는 용도로 사용하는 타이머가 고장 났습니다. 배터리가 다 되었을까 해서 CR1620 코인전지를 교체해 보기로 했습니다. 뚜껑은 접착제로 붙어 있어서 펜치를 이용해서 겨우 뜯어 낼 수 있었습니다. 방수를 위함인지는 모르겠지만 배터리 교체가 어려운 점은 좀 아쉬웠습니다. 배터리를 교체했지만 타이머는 살아나지 않았습니다. 다른 이유로 고장이 났거나 뚜껑을 뜯어 내는 과정에서 충격이 가서 고장이 났을지도 모르겠습니다. 그래서 어떻게 하나 싶어 검색해 보니 브리타 타이머를 알리에서 구입할 수 있다는 것을 알게 되었습니다. 알리 구매 링크: htt..
logstash 에서 value 내용 중 이메일만 추출하는건 grok filter 에서 match %{EMAILADDRESS} 를 이용하면 추출 해 낼 수 있다. 하지만 특정항목을 이미 array 로 분리 해 낸 상태에서 해당 array 값들 중 email 만 추출 해 내는 방법을 딱히 찾지 못하였다. 하지만 ruby filter 로 ruby 언어로 직접 코딩 하면 가능하다. 예를 들어 아래와 같이 array 에 이메일 정보가 들어가 있는데 순수하게 이메일 주소만 있는 것이 아니라 이름정보나 꺽쇠기호 같은게 섞여 있는 경우 순수이메일주소만 추출하고자 한다. array1 = ['"test1" ', 'testaddress1@gmail.com'] array2 = ['"test2" ', 'testaddress2..
logstash 필터중에 value 길이를 자르는 기능은 기본적으로 제공 하지 않는다. 뭔가 다른 수가 있는지는 모르겠다. grok 에서 정규표현식으로 가능 하려나? 아무튼 ruby 필터로 ruby 코딩을 직접 하면 해결 할 수 있다. 다음은 logdate 라는 항목의 내용 중 앞의 8자리만 잘라내어서 사용하는 예제이다. filter { ruby { code => "event['logdate'] = event['logdate'][0..7]" } } 20160529224811 이라는 데이터가 있으면 20160529 만 남게 된다.
logstash 작업을 하다가 받은 요구사항. 요약하면 다음과 같다. 로그에 있는 로그시간을 UTC 로 변경. 포멧은 유지한다. 기존 로그시간의 포멧은 yyyyMMddHHmmss 이며 타임존은 KST 이다. date 필터 date 필터가 있기에 확인 해 봄. https://www.elastic.co/guide/en/logstash/current/plugins-filters-date.html 안되겠음. 특정 필드의 시간 정보를 logstash 의 @timestamp 로 지정하는 기능이기 때문. 좀 더 범용적으로 만들어도 될 텐데 좀 아쉬운 부분이다. ...라고 적었는데 방금 다시 보니 target 이라는 옵션이 있다;; default 가 @timestamp 인데 다른걸 지정하면 되는 것 같다. 물론 out..