Установка 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 для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.