반응형

출처:https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=monoris30&logNo=221317127486

 

이제부터는 숫자로 된 필드 값을 계산하거나 필드 값을 다른 곳에서 사용하기 위해서 필드의 데이터를 추출하는 방법을 살펴본다. Splunk는  이런 기능을 위해서 stats함수를 제공한다.  평균값, 최대값, 최소값 등 수학 계산을 지원하는 통계함수를 사용할 수 있다.  

stats 명령어와 함수 사용
stats는 각종 통계 함수를 이용해서 데이터를 계산한다. 사용할 수 있는 통계 함수로는 숫자(count), 중복제거 개수(dc), 총합(sum), 평균(avg), 목록(list),  중복제거 목록(values) 등이 있다. 기술통계에서 많이 사용하는 최대값(max), 중앙값(median), 최소값(min), 분산(var), 표준편차(stdev) 역시 지원한다. 각 함수들은 필드명을 인자로 받아서 해당 함수가 제공하는 기능에 따라 값을 반환한다. 사용 방법은 다음과 같다. 

 

... | stats [count|dc|sum|avg|list|values] by [필드명]

 

by 필드명 기중으로 Groub by를 해줌 => 같은 필드끼리 합쳐서 보여줌

 


통계 함수인자로 사용하는 필드의 데이터는 숫자값을 포함하고 있어야 한다. values 함수, list 함수는 목록을 만들어주는 함수이므로 필드값이 숫자나 문자 모두 가능하다. 그 외 다른 함수들은 숫자 형식의 데이터를 입력으로 받는다. stats에서 많이 사용하는 함수의 목록은 아래와 같다. 

함수명 설명
count(X) X 필드의 개수를 반환한다.
dc(X) X 필드의 중복을 제거한 개수를 반환한다.
sum(X) X 필드의 총합을 반환한다.
avg(X) X 필드의 평균을 반환한다.
list(X) X 필드를 목록으로 만들어 반환한다.
values(X) X 필드의 중복을 제거한 목록을 반환한다.
max(X) X 필드의 최대값을 반환한다.
median(X) X 필드의 중앙값을 반환한다.
min(X) X 필드의 최소값을 반환한다.
var(X) X 필드의 분산값을 반환한다.
stdev(X) X 필드의 표준편차를 반환한다.
earliest(X) X 필드의 가장 먼저 들어온 값을 반환한다.
latest(X) X 필드의 가장 최근 시간 값을 반환한다.


대부분 함수의 이름에서 기능을 바로 이해할 수 있을 것이다. 한 가지 생각해야 할 것은 필드 X가 로그 한 줄을 의미하지 않는다는 점이다. 각 로그가 필드로 구분되어 있다면 추출하는 로그의 집합에서 특정 필드를 의미하는 것이다. 즉, 1학년 전체 학생에서 국어 과목의 평균을 구하는 것이다. 그러므로 stats 함수는 검색어의 처음에 나올 수 없다. 계산을 위한 범위를 앞의 검색에서 추출해서 stats 함수에 넘겨주면 그 결과를 기반으로 계산을 하기 때문이다. 이것은 나중에 살펴볼 streamstats, eventstats 함수도 동일하게 적용되는 내용이다. 

반응형

'IT기술 관련 > 정보보안 관련' 카테고리의 다른 글

SMTP의 보안 시스템 :: SPF, DKIM, DMARC 란?  (0) 2024.01.16
Splunk - eval 함수  (0) 2023.09.13
Splunk 자주 사용하는 명령어  (0) 2023.09.13
Splunk 란?  (0) 2023.09.13

+ Recent posts