분류 전체보기
-
org.springframework.web.servlet.mvc.condition.PatternsRequestCondition.toString()JAVA 2023. 6. 20. 08:47
환경 Spring Boot 2.7.12 Swagger 2.9.2 스웨거 에러 2023-06-20 08:38:11.392 ERROR [127.0.0.1] [localhost] 88594 --- [ main] o.s.boot.SpringApplication [o.s.b.SpringApplication > reportFailure:821] : Application run failed org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException: Cannot invoke "org...
-
Elasticsearch GC 변경 계획 (CMS-> G1GC)검색/ElasticSearch 2021. 8. 26. 16:44
CMS와 G1GC :Java Garbage Collection G1GC 상세 :Java HotSpot VM G1GC 참고 :G1 GC 적용과 JVM Upgrade 작업 방향 자바 버전 업그레이드 : Elasticsearch 버전 별 지원 JDK 정보 Elastic Support Matrix | Elasticsearch Elasticsaerch6.5.4 버전은 1.8을 제외하면 JDK11 버전을 지원한다. jvm.options 변경 : 다음 CMS GC를 주석처리 한다. G1GC 활성화 : G1GC 설정 : 일반적인 권장 사항 : 가급적이면 기본 설정으로 사용할 것. 옵션 및 기본값 -XX:MaxGCPauseMillis=200 최대 일시 정지 시간 목표. 기본값은 200ms. -XX:GCPauseTimeI..
-
부트스트랩 체크검색/ElasticSearch 2021. 8. 26. 16:15
#부트스트랩 체크 ES 5.0 부터 인스턴스가 시작할 때 부트스트랩 체크라는 장치가 도입되었다. 의도하지 않은 설정 미스를 미리 검출하는 목적을 가지고 있다. 예를들어 -Xms 와 -Xmx 의 값이 다르면 ES 가동이 실패한다. 1. Heap size check 엘라스틱서치는 기본적으로 큰 메모리를 사용하기 때문에 처음부터 기본 힙크기와 최대 힙크기 값을 같게 설정하는 것이 좋다. 시스템을 운영하는 중에 힙 크기 조정이 일어날 경우 시스템이 일시 정지할 위험성이 있기 때문이다. jvm.options 에 설정된 기본힙과 최대힙 : 최근 일주일 힙 사용량 : 2. File descriptor check (File Descriptors ) #파일 디스크립터 리눅스/유닉스 환경에서는 모든 작업이 파일로 처리된다..
-
kibana 접속 안될때 (read-only 전환된 상태)검색/ElasticSearch 2021. 8. 26. 14:45
주요 에러 : FORBIDDEN/12/index read-only "reason":"ClusterBlockException[blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];]","caused_by":{"type":"cluster_block_exception","reason":"blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"}}]}}}}"} Unhandled rejection [export_exception] Exception when closing export bulk :: {"path":"/_xpack/monitoring/_bulk","query":{"system_id..
-
Search Query Test ( Elasticsearch v6.5.4)검색/ElasticSearch 2021. 8. 26. 14:41
테스트 indices 생성 field 분석기 적용 title_std_std 색인 시점 : standard 검색 시점 : standard title_kor_std 색인 시점 : korean 검색 시점 : standard title_std_kor 색인 시점 : standard 검색 시점 : korean title_kor_kor 색인 시점 : korean 검색 시점 : korean title_ngram_std 색인 시점 : ngram 검색 시점 : standard PUT search_query_test/ { "mappings" : { "_doc" : { "dynamic": "strict", "properties" : { "title_std_std" : { "type" : "text", "analyzer": "..
-
동의어 등록 테스트 ( nori / Elasticsearch v6.5.4)검색/ElasticSearch 2021. 8. 26. 14:22
동의어 사전이 적용되는 시점 Tokenizer를 통해 형태소 분석이 끝난 후에 Token Filters에 정의한 순서 대로 사전이 적용된다. 동의어 등록 ELS_HOME/config/synonyms.txt 동의어는 하나의 규칙당 한 줄식 입력해야 하며 파일은 UTF8로 인코딩 되어야한다. 에어프라이어,에어플라이어,애어프라이어,애어플라이어 에이아이,인공지능 대한민국,우리나라,한국 한국,코리아,korea 아름다움,멋=>뿜뿜 동의어 등록 후에는 _setting 정보를 update하기 위해 indices를 닫았다가 열어야한다. POST synonyms_dic_test/_close POST synonyms_dic_test/_open 이미 색인된 데이터에 사전을 반영하기 위해서는 재색인을 해야한다 동의어 적용 테스..
-
동의어 사전 다중 등록 테스트 (Elasticsearch v6.5.4)검색/ElasticSearch 2021. 8. 26. 14:05
목적 nori analyzer의 동의어 등록 방식은 “a,b,c”와 “a=>b” 두가지가 있다. 위 동의어 키워드는 synonyms.txt 파일에 작성하여 indices 생성에 사용한다. 사전 관리시스템을 만들면서, 우리는 “a,b,c” 방식을 동의어, “a=>b” 방식을 유사어 사전이라고 분리했다. 분리한, 동의어와 유사어 사전이 각각 배포 및 적용이 가능한지 테스트한다. indices 생성시 filter 에 동의어,유사어 필터를 각각 생성 할 수 있는지 확인한다. synonym.txt, similar.txt 사전을 생성 후 각각의 사전이 적용 되는지 확인한다. 테스트 indices생성 filter에 synonym 타입의 동의어와 유사어 필터를 각각 생성한다. PUT dic_synonym_test/ {..
-
운영 중인 엘라스틱서치 순차적 재시작 ( Rolling-Restart )검색/ElasticSearch 2021. 8. 26. 13:20
소개 ES 입장에서는 클러스터에 속한 노드중 한대가 중지되면 그 노드에 속한 프라이머리 샤드나 레플리카 샤드를 다른 노드로 옮기려는 샤드 할당(Shard Allocation) 작업을 수행한다. 이는 클러스터의 특정 노드가 장애상황일 때 이부분에 대한 Fail Over가 동작하는 과정이다. 그러나 순차적 재시작 case에서는 이 과정이 오히려 오버헤드(overhead)로 동작하기 때문에 재시작 전 클러스터의 샤드 할당 기능을 꺼두어 샤드 할당이 다시 일어나는 것을 미연에 방지한다. (출처 : https://bit.ly/31ADg0V) Rolling-Restart 사용 이유 검색 중단 없이 하드웨어 교체, 서버/ Elasticsearch 업그레이드 작업을 위해 사용 indices의 _close, _open ..