Giter VIP home page Giter VIP logo

logstash-filter-nori's Introduction

Logstash Filter Nori Gem Version

이 플러그인은 Logstash 를 위한 필터 플러그인으로

Apache Lucene 프로젝트의 Nori 분석기를 기반으로 작성되었습니다.

사용방법

Logstash 버전이 8.2.2 이상인 경우

Logstash 버전이 8.2.2인 경우 해당 플러그인의 gem 파일을 직접 받지 않고도 설치할 수 있습니다.

Logstash 디렉토리로 이동 후

./bin/logstash-plugin install --no-verify logstash-filter-nori

명령어로 설치합니다.


Logstash 버전이 8.2.2 미만인 경우

Logstash 버전이 8.2.2 버전 미만인 경우에는 해당 플러그인의 gem 파일을 이용해서 설치해야 합니다.

gem 파일은 직접 빌드하거나 release 탭에서 내려받으실 수 있습니다.

이 플러그인을 직접 빌드하기 위해서는 맨 처음에 logstash-core 라이브러리가 필요합니다.

1

git clone https://github.com/elastic/logstash.git

2

cd ./logstash

3

./gradlew clean assemble

4

export LOGSTASH_CORE_PATH=$PWD/logstash-core

5

cd ../

6

git clone https://github.com/twosom/logstash-filter-nori

7

echo "LOGSTASH_CORE_PATH=$LOGSTASH_CORE_PATH" >> gradle.properties

8

./gradlew clean gem

9

export FILTER_NORI_PATH=$PWD/logstash-filter-nori-현재 필터 노리 플러그인 버전.gem  

로그스태시가 설치 된 폴더로 이동 후

./bin/logstash-plugin install $FILTER_NORI_PATH 

필터 설정

filter {
  
  nori {
    fields => [                                 # Logstash Filter Nori 를 적용할 필드 이름을 배열로 설정합니다. 필터가 적용된 값들은 필드이름_morpheme 이라는 필드에 저장됩니다.
      "field1",
      "field2"
    ]
    
    extract_tags => [                           # 추출하길 원하는 품사 태그들을 배열로 설정합니다. 아무것도 설정하지 않으면 필드이름_morpheme 에는 아무 값도 들어가지 않습니다.
      "NNP",
      "NNG",
      ...
    ]
    
    user_dictionary_path => "사용자 사전의 절대경로"  # 사용자 사전이 저장된 절대경로를 문자열로 설정합니다. 필수값은 아닙니다. 
    
  }
  
}

품사 태그들은 이곳에서 확인하실 수 있습니다.

사용 예제

input

bin/logstash -e "input { generator {'message' => '안녕하세요. 잘 부탁 드려요.'} } filter { nori { fields => ["message"] extract_tags => ["NNP", "NNG"] } }  output { stdout{} }"

output

{
  "event" => {
      "original" => "안녕하세요. 잘 부탁 드려요.",
      "sequence" => 4999
  },
  "@timestamp" => 2022-06-03T17:57:51.623386Z,
  "message" => "안녕하세요. 잘 부탁 드려요.",
  "host" => {
    "name" => "hopeui-MacBookPro.local"
  },
  "message_morpheme" => [
    [0] "안녕",
    [1] "부탁"
  ],
  "@version" => "1"
}

logstash-filter-nori's People

Contributors

twosom avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.