2014-06-19 7 views
0

나는 nginx-> fluentd-> elasticsearch-> kibana 스택을 실행 중입니다. 내가 "용어"패널과 같은 것을 할 수 있는지 로그에서 경로 문자열 구성 요소를 사용하여 수행 할 수 있는지 파악하려고 시도합니다. 단어 패널에서 직접 단어 패널을 사용하면 경로에서 가장 많이 사용 된 단어가 표시됩니다 (예 : 드루팔 (drupal)의 경우 "노드 (node)"가 가장 많이 사용되는 것으로 보여지며 실제 노드 ID 없이는 쓸모가 없습니다.kibana의 http 로그 경로 목록 집계

elasticsearch와 관련이 있습니까?

업데이트 : 여기에 내 로그의 샘플입니다 :

"path": "/node/123" 
"path": "/node/456" 
"path": "/user/create" 

내가 "경로"필드의 "용어"패널을 추가 할 경우, 나는 열 "노드", "사용자"를 "만들 수 ", 통계적으로 의미가 없습니다. 필요한 것은 필드의 고유 단어 부분이 아닌 고유 필드 값을 집계하는 용어 패널입니다.

답변

1

"경로"필드를 "not_analyzed"필드로 설정하려면 Elasticsearch의 매핑을 구성해야합니다. 기본 설정은 "분석"되어 있으며 기본적으로 ES는 문자열 필드를 구문 분석하여 가능한 경우 여러 토큰으로 나눕니다. this related question을 참조하십시오.

Elasticsearch의 매핑을 구성하는 방법에 관해서도 필자는 여전히 정렬 할 수있는 다중 토큰 문자열과 비슷한 문제를 가지고 있습니다. put 매핑 API 나 config 파일 사용 가능성이있는 것 같습니다 (here 참조).

+0

내 질문에 세부 사항이 업데이트되었습니다. – Farcaller

+0

내 대답 업데이트;) – Aldian