[Elasticsearch] Native Script 작성 템플릿. (펌)

Elastic/Elasticsearch 2013. 7. 16. 19:21

원본 URL : https://gist.github.com/UpOutServers/9a4466108d12452738e9


package org.elasticsearch.plugin.myplugin;
 
import org.elasticsearch.common.inject.Module;
import org.elasticsearch.plugins.AbstractPlugin;
import org.elasticsearch.rest.RestModule;
import org.elasticsearch.script.ScriptModule;
 
 
public class MyPlugin extends AbstractPlugin {
 
public String name() {
return "MyPlugin";
}
 
public String description() {
return "MyPlugin";
}
 
 
public void onModule(RestModule module) {
module.addRestAction(/*Your rest class*/);
}
 
public void onModule(ScriptModule module) {
module.registerScript(/*Your script name*/ ,/*Your script class*/);
}
}


여기서 제가 만들어서 사용한건 ScriptModule 입니다.

AbstractPlugin 을 이용 할 경우 elasticsearch.yml 에 등록하지 않고 바로 ES 가 실행 되면서 플러그인을 로딩해줘서 설정에 대한 번거로움이 없어집니다.


뭐 등록하는거 만들기 귀찮으시다면 그냥 패쓰 하시면 됩니다.

단, elasticsearch.yml 에 등록을 해주셔야 사용이 가능 하다는 거.. :)


아래는 몇 가지 도움이 될 만한 링크 이니 참고하시면 되겠내요.


http://www.elasticsearch.org/guide/reference/modules/scripting/

https://github.com/imotov/elasticsearch-native-script-example

http://elasticsearch-users.115913.n3.nabble.com/Loading-and-Registering-Native-Scripts-td3088835.html

http://elasticsearch-users.115913.n3.nabble.com/Native-Script-Help-td2980754.html


그리고 매우 중요한건 0.90.x 이랑 아래 버전이랑 API  가 바뀌었으니 꼭 확인하고 사용하시기 바랍니다.

오늘 이것때문에 삽질 했내요..ㅡ.ㅡ;;

: