그런데 이게 레이어 개념을 이용해서 꽤 괜찮은 기능을 제공한다. 일단,
인덱스 템플릿 생성
출발지와 목적지 IP의 위경도 정보 필드를 geo_point 타입으로 지정해주는 인덱스 템플릿 생성.
다음은 테스트 대상 로그와 로그스태시 파이프라인 설정.
123.234.235.236 110.35.85.22
23.234.235.236 110.35.85.22
120.234.235.236 110.35.85.22
110.234.235.236 110.35.85.22
45.234.235.236 110.35.85.22
210.234.235.236 110.35.85.22
input {
file {
path => "D:/test.log"
start_position => "beginning"
sincedb_path => "nul"
}
}
filter {
dissect { mapping => { "message" => "%{srcip} %{dstip}" } }
mutate { strip => "dstip" }
geoip { source => "srcip" target => "geo_src" }
geoip { source => "dstip" target => "geo_dst" }
}
output {
stdout {}
elasticsearch {
hosts => "192.168.56.1"
index => "test"
}
}
출발/목적지 지도
테스트 로그 연동이 끝났으면 출발지와 목적지 IP 지도를 그려보자. Maps 메뉴를 클릭하면 'Road map(기본 세계 지도)'이 펼져친다.
1. 'Add Layer' 클릭 후, 위경도 좌표를 찍어주는 Documents 선택.
2. 인덱스와 출발지 필드 선택 후, 레이어 추가.
3. 기존 Coordinate, Region Map은 위치와 발생 개수만 표시 가능했는데 Maps는 Tooltip 메뉴를 이용해서 훨씬 다양한 정보를 표시할 수 있다. 원하는 정보 선택 후 저장.
4. 완성된 출발지 IP 지도.
5. 같은 방식으로 추가된 목적지 IP 지도.
출발지와 목적지 연결
1. 두 개의 위경도 좌표를 선으로 연결해주는 'Point to point' 선택.
2. 인덱스와 출발지, 목적지 필드 선택.
3. 선 굵기 조절.
4. 완성된 출발/목적지 연결 지도. 출발/목적지 위경도와 위경도 좌표를 이어주는 선, 3개의 지도가 레이어드된 결과.
연결선을 아치 형태로 그려주면 더 이쁠 듯.
관련 글
댓글 없음:
댓글 쓰기