GetWild의 신호 강도를 분석하여 Macerel을 사용하여 사운드의 크기를 차트화합니다.

5687 단어 GoMackerelGetWild
Mackerel Advent Calendar 2016째 날.

개요

  • GetWild의 신호 강도, 시각화된 사운드 크기 분석
  • Mackerel을 사용한 차트화
  • 그나저나 지난번Mackerel에 GetWild라는 글자를 썼어요.
  • 컨텐트


    ① flac2 flat, 분당 /tmp/soud 사용decode.log에 출력 값을 쓰는 코드(flac2 flat.go)

    package main
    
    import (
      "io/ioutil"
      "log"
      "os"
      "strconv"
      "time"
    
      "github.com/sioncojp/flac2float"
    )
    
    const (
      filename = "/tmp/sound_decode.log"
    )
    
    func main() {
      decode := flac2float.New(os.Stdin, 1)
      values, err := decode.ReadSound()
      if err != nil {
        log.Fatalf("Error: %s", err)
      }
      for _, value := range values {
        ioutil.WriteFile(filename, []byte(strconv.FormatFloat(value, 'f', 12, 64)), 0644)
        time.Sleep(60 * time.Second)
      }
    }
    

    ② 모니터링용 스크립트 쓰기

    ### 初期データ投入
    $ echo 0 > /tmp/sound_decode.log
    
    ### 計測用スクリプトを書く
    $ vim /tmp/get_wild_and_tough.sh
    
    #!/bin/bash
    
    name="GetWild"
    monitor_time=`date +%s`
    count=`cat /tmp/sound_decode.log`
    echo -e "${name}\t${count}\t${monitor_time}"
    

    ③mackerel-agent.conf reload라고 쓰여 있습니다.다음에 구축된 명령 실행하기

    ### 書く
    $ vim /etc/mackerel-agent/mackerel-agent.conf
    [plugin.metrics.Playing_GetWild]
    command = "/bin/bash /tmp/get_wild_and_tough.sh"
    
    ### reloadする
    $ service mackerel-agent reload
    
    ### build後、走らせる
    $ go build flac2float.go
    $ nohup cat GET_WILD.flac | ./flac2float &
    

    ④ 결과



    *음악의 초수 증가

    Macerel의 이점

  • 아까처럼 전체를 볼 수 있고 모든 포인트를 꼼꼼히 살펴볼 수 있는 부분이 좋아요.

  • 최후

  • 뭐든 시각화하는 맥켈 대단해!
  • 좋은 웹페이지 즐겨찾기