splunk/ 4. 현재 나의 현황 대시보드 생성2

Algo rhythm·2022년 7월 12일
0

splunk

목록 보기
6/24

다른 차트 추가

stats 명령으로 통계값 확인

  • 원본 코드
index="kospi" earliest=-90d code=005930*
| eval k_code = code
| rex field=code "^(?<code>\d+).KS"
| lookup kospi_200 code OUTPUT name 
| stats avg(Close) as Close by _time

현재부터 지난 90까지의 데이터에 대한 통계값

stats 결과

timchart 결과

index="kospi" earliest=-90d code=005930*
| eval k_code = code
| rex field=code "^(?<code>\d+).KS"
| lookup kospi_200 code OUTPUT name 
| timechart span=1d avg(Close) as Close

  • 주식이 열리지 않는 날에 대한 기록은 null로 표기되어 반영X

주식 추세선

index="kospi" earliest=-90d code=005930*
| eval k_code = code
| rex field=code "^(?<code>\d+).KS"
| lookup kospi_200 code OUTPUT name 
| sort _time
| streamstats window=7 current=true avg(Close) as ma7
| stats avg(Close) as Close, avg(ma7) as MA7 by _time

  • streamstats 이벤트의 순서에 따라 stream 형태로 이벤트를 모아 그에 따른 함수 사용 가능.
  • "window=7" _time 순서대로 7개의 이벤트를 모아 "avg(close)" Close 값에 대한 평균을 구함
  • "current=true"로 설정해서 현재 값도 계산에 포함

위의 결과 차트를 대시보드에 포함

대시보드 편집 시작


trellis.value 를 통해 종목명이 변수로 들어옴

스플렁크 메뉴얼 : https://docs.splunk.com/Documentation/Splunk/8.1.1/Viz/ChartConfigurationReference

 <panel depends="$stock_code$">
      <title>$stock_code$ 주가 변동 그래프</title>
      <chart>
        <search>
          <query>index="kospi"
| eval k_code = code
| rex field=code "^(?&lt;code&gt;\d+).KS"
| lookup kospi_200 code OUTPUT name 
| where name = "$stock_code$"
| sort _time
| streamstats window=7 current=true avg(Close) as ma7
| stats avg(Close) as Close, avg(ma7) as MA7 by _time</query>

결과

해당 값을 클릭하면 그래프가 변함

 <option name="charting.fieldDashStyles">{"Close":"solid", "MA7":"dash"}</option>

다시 UI 원본 코드에서 위의 코드를 추가 하여 MA7 그래프의 속성을 변경

주가 변동 그래프의 선을 클릭하면 주가 변동 그래프가 사라짐

profile
배운 건 써 먹자

0개의 댓글