Установка sampler в Unix/Linux

Sampler — это утилита для визуализации вывода консольных команд на экран с визуализацией и оповещением. Очень прост в использовании и настройке (с помощью простого файла YAML).

Можно попробовать любой динамический процесс прямо с терминала — наблюдать за изменениями в базе данных, отслеживать сообщения MQ в полете, запускать сценарий развертывания и получать уведомление, когда это будет сделано.

Если есть способ получить метрику с помощью командной строки, то ее можно мгновенно визуализировать с помощью Sampler.

Установка sampler в MacOS

Для начала, нужно поставить HOMEBREW:

Установка brew

А потом выполняем установку:

$ brew install sampler

Или:

$ sudo curl -Lo /usr/local/bin/sampler https://github.com/sqshq/sampler/releases/download/v1.1.0/sampler-1.1.0-darwin-amd64 && sudo chmod +x /usr/local/bin/sampler

Использование будет ниже.

Установка sampler в Linux

Установка выглядит:

$ sudo wget https://github.com/sqshq/sampler/releases/download/v1.1.0/sampler-1.1.0-linux-amd64 -O /usr/local/bin/sampler && sudo chmod +x /usr/local/bin/sampler

Для проигрывания звука, нужно поставить libasound2-dev пакет, например для Debian/Ubuntu:

$ sudo apt install libasound2-dev

Для Fedora:

$ sudo dnf install golang-github-sqshq-sampler

Перейдем к использованию.

Использования sampler в Unix/Linux

Вы указываете команды CLI-шки, Sampler выполнит и выведет на экран.

Использование Sampler — это, по сути, трехэтапный процесс:

  • Определите команды в командной строки через конфигурационный YAML файл.
  • Запустите утилиту, например: sampler -c config.yml
  • Настройка размера и расположение компонентов в пользовательском интерфейсе.

Конфиг выглядит:

theme: dark # default = dark ; light supports also.
variables:
  sshconnection: ssh USER@HOST
  mysql_connection: mysql -u root -s --database mysql --skip-column-names
textboxes:
  - title: Docker containers stats
    sample: docker stats --no-stream --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemPerc}}\t{{.MemUsage}}\t{{.NetIO}}\t{{.BlockIO}}\t{{.PIDs}}"
  - title: SSH
    pty: true
    init: $sshconnection
    sample: top
  - title: Java application uptime
    multistep-init:
      - java -javaagent:/Users/captain/jmx_prometheus_javaagent-0.14.1.jar=8080
      - open localhost:8080 # or local PID
      - bean java.lang:type=Runtime
    sample: get Uptime
    transform: echo $sample | tr -dc '0-9' | awk '{printf "%.1f min", $1/1000/60}'
sparklines: 
  - title: CPU usage
    sample: ps -A -o %cpu | awk '{s+=$1} END {print s}' 
  - title: MySQL (random number example)
    pty: true
    init: $mysql_connection
    sample: select rand();

Простой запуск:

$ sampler -c sampler.yaml

Идея прикольная! Использовать можно, но пока практичности не нашел. Оставил чтобы можно было ознакомиться в случае чего.

Вот и все, статья «Установка sampler в Unix/Linux» завершена.

This entry was posted in Без рубрики. Bookmark the permalink.

Добавить комментарий

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.