Kibana
키바나
는 에 저장된 자료를 탐색·시각화하고 Elastic 기능을 관리하는 웹 인터페이스다. 화면의 검색 범위와 시간 필드가 무엇인지 알아야 데이터 없음과 수집 실패를 구분할 수 있다.
밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.
01무엇이고, 어떤 일을 하나
- 에서 원본 이벤트와 필드를 탐색한다.
- 대시보드로 사건·성능 수치를 비교한다.
- 데이터·조회 권한과 관련 설정을 관리한다.
02어떤 순서로 동작하나
- 자료 선택
의 대상 인덱스·데이터 스트림과 접근 권한을 확인한다. 에 연결된 것만으로 자료가 자동 수집되는 것은 아니다.
- 탐색 범위 설정
와 시간 필드를 선택하고 실제 이벤트가 들어 있는 시간 범위를 지정한다. 잘못 해석된 시간대는 화면에서 누락처럼 보일 수 있다.
- 필드 질의
문서와 Mapping을 보고 문자열·숫자·날짜 조건을 구성한다. 검색 언어와 분석된 text·정확 일치 keyword의 의미를 구분한다.
- 시각화 검증
집계 패널의 분모·필터·시간 간격을 원본 문서와 대조한다. 같은 데이터도 집계 방식이 다르면 그래프의 수치가 다르게 보인다.
03먼저 알아둘 용어와 구성요소
- 탐색할 인덱스·데이터 스트림과 시간 필드 등의 범위를 정의하는 객체.
- 문서 목록과 필드로 데이터를 검색·탐색하는 화면.
- 선택한 발생 시각 필드의 조회 범위.
- 여러 시각화 패널과 필터를 묶은 화면.
- 가 검색·집계할 문서를 저장하는 분산 검색 엔진.
Filebeat 입력 설정에서 Kibana 문서 세 건까지 추적하기
설정 파일의 입력·출력과 검색 화면의 문서·시간·필드를 연결한다.
실습 구성과 전제
- 자신의 격리 Elastic 환경과 비밀값을 별도로 관리한 수집 계정을 사용한다.
- 설정 화면과 검색 화면은 같은 제품의 서로 다른 수집 사례다. filestream 입력이 사진 속 세 문서의 유일한 출처였다고 단정하지 않는다.
입력 경로와 출력 주소를 분리한다
- filestream은 paths에 일치하는 파일을 수집하고 output.는 문서를 보낼 목적지를 정한다. setup.는 대시보드 등의 설정 연결이며 로그 본문을 로 직접 보내는 경로가 아니다.
- 사진에는 시험용 관리자 계정이 보이지만 실제 배포에서는 전용 권한·keystore를 사용한다. fingerprint 길이와 작은 파일 처리 조건은 설치 버전의 문서로 확인한다.
shellfilebeat test config -e filebeat test output -e실제 비밀값이 출력될 수 있는 디버그 로그는 외부에 복사하지 않는다.
원본 크기로 보기 ↗- setup.kibana, output.elasticsearch, filebeat.inputs 세 블록이 나뉘어 보인다.
- filestream의 id·paths와 fingerprint.length 64가 표시된다. 필드 이름은 같아도 버전별 기본 동작을 확인해야 한다.
확인 기준filebeat test config와 test output을 각각 수행해 문법과 연결을 구분한다.
시간 필터와 문서 수를 먼저 확인한다
- 에서 와 시간 범위를 맞춘 뒤 Documents 수를 읽는다. 서비스가 실행 중이어도 해당 인덱스·시간 범위에 문서가 없으면 검색은 비어 있다.
- 화면의 세 문서는 테스트 로그·로그인 성공·결제 오류라는 메시지를 가진다. 메시지 이름은 사건 분류의 입력이며 실제 비즈니스 성공을 독립 검증한 값은 아니다.
원본 크기로 보기 ↗- Data view는 elk-basic이고 시간 범위는 Last 7 days, Documents는 3으로 표시된다.
- 각 행에 @timestamp·host.hostname·message·_index가 보여 수집 문서를 구조화된 필드로 읽을 수 있다.
확인 기준시각·인덱스·데이터 뷰가 틀려 생긴 빈 결과와 수집 실패를 분리한다.
검색어와 필드 조건의 차이를 시험한다
- 사진의 검색창은 호스트 이름 문자열을 검색한다. 정확한 필드 조건을 쓰려면 KQL의 필드:값 구문과 해당 필드의 매핑을 확인한다.
- 원본 message와 event.original을 보존하면서 필요한 구조 필드를 추가하고, 파싱 실패를 성공 문서와 구분한다.
texthost.hostname : "lab-host"KQL의 필드 조건 예시. 자신의 문서에 저장된 호스트 이름으로 바꾼다.
원본 크기로 보기 ↗- 왼쪽 Available fields에 @timestamp·event.original·host.hostname·lab·message가 보인다.
- 검색 후에도 Documents 3이 보이며 호스트 문자열이 강조된다. 강조 표시만으로 정확한 필드 동등 비교가 수행됐다고 해석하지 않는다.
확인 기준시간 범위와 필드 매핑을 고정한 뒤 검색 결과 수를 비교한다.
실습에서 확인한 동작 원리
- 설정 연결과 문서 출력은 다른 경로다.
- 검색 결과는 데이터 뷰·시간·필드 매핑 조건에 의존한다.
04예제로 따라가기
- 가상 이벤트의 발생 시각이 어제로 파싱되었다면 최근 15분 화면에는 보이지 않아도 실제로 적재되어 있을 수 있다.
- status가 숫자인 필드와 문자열인 필드는 같은 모양의 값이어도 질의와 집계 조건이 달라질 수 있다.
- 문서 수 그래프와 서로 다른 사용자 수 그래프는 같은 시간 범위에서 서로 다른 질문에 답한다.
05혼동하기 쉬운 점과 확인 기준
- 의 정상 응답은 소스→수집기→인덱스의 전체 파이프라인 정상 여부를 보장하지 않는다.
- 화면 권한과 데이터 권한이 다를 수 있으므로 관리자로만 되는 조회를 일반 사용자에게도 가능한 것으로 일반화하지 않는다.
06상세 노트 · 실습 자료
헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.
공식 문서 · 표준
기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.