可视化数据库监控警报工具 —— Sampler

大家好,我是 JackTian。

今天给大家推荐一款基于 Shell 命令执行,可视化和警报工具 —— Sampler。

Sampler 不是全面监控系统的替代品,而是易于设置的开发工具。比如说你要用其他监控工具 Grafana 配置 Prometheus 会对你觉得一头雾水,Sampler 则可能是一个正确的解决办法。

你只需指定 Shell 命令即可使用,可直接从终端中采样任何动态过程、观察数据库中的更改情况、监视 MQ 实时消息,触发部署脚本并在完成时获取通知消息,简单方便,易于配置。

无需将 Sampler 安装在监控的每台服务器上,您可以直接在本地运行 Sampler,仍然可以从多台远程计算机上收集信息,任何可视化都可能具有 init 命令,您可以在其中命令 SSH 到远程服务器。

效果图如下:
可视化数据库监控警报工具 —— Sampler_第1张图片

安装

MacOS

# 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

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 需安装系统库,Sampler 才能播放触发音。通常情况下,该库已存在,如没有,则可使用您喜欢的软件包管理器进行安装。例如:

$ apt install libasound2-dev

Windows

choco install sampler

或者

https://github.com/sqshq/sampler/releases/download/v1.1.0/sampler-1.1.0-windows-amd64.exe

Sampler 主要包括内容:

  • 组件: 运行图表、迷你图、测量、文本框等;
  • 钟声和口哨声: 触发器、交互式外壳、颜色主题等;
  • 资料库: Databases(MySQL,PostgreSQL,MongoDB)、Kafka、Docker、SSH、JMX等;

组件

具有 MacOS 兼容采样脚本的每种组件类型的配置示例。

运行图表
可视化数据库监控警报工具 —— Sampler_第2张图片

runcharts:
  - title: Search engine response time
    rate-ms: 500        # sampling rate, default = 1000
    scale: 2            # number of digits after sample decimal point, default = 1
    legend:
      enabled: true     # enables item labels, default = true
      details: false    # enables item statistics: cur/min/max/dlt values, default = true
    items:
      - label: GOOGLE
        sample: curl -o /dev/null -s -w '%{time_total}'  https://www.google.com
        color: 178      # 8-bit color number, default one is chosen from a pre-defined palette
      - label: YAHOO
        sample: curl -o /dev/null -s -w '%{time_total}'  https://search.yahoo.com
      - label: BING
        sample: curl -o /dev/null -s -w '%{time_total}'  https://www.bing.com

迷你图
可视化数据库监控警报工具 —— Sampler_第3张图片

sparklines:
  - title: CPU usage
    rate-ms: 200
    scale: 0
    sample: ps -A -o %cpu | awk '{s+=$1} END {print s}'
  - title: Free memory pages
    rate-ms: 200
    scale: 0
    sample: memory_pressure | grep 'Pages free' | awk '{print $3}'

测量
可视化数据库监控警报工具 —— Sampler_第4张图片

gauges:
  - title: Minute progress
    rate-ms: 500        # sampling rate, default = 1000
    scale: 2            # number of digits after sample decimal point, default = 1
    percent-only: false # toggle display of the current value, default = false
    color: 178          # 8-bit color number, default one is chosen from a pre-defined palette
    cur:
      sample: date +%S  # sample script for current value
    max:
      sample: echo 60   # sample script for max value
    min:
      sample: echo 0    # sample script for min value
  - title: Year progress
    cur:
      sample: date +%j
    max:
      sample: echo 365
    min:
      sample: echo 0

文本框
可视化数据库监控警报工具 —— Sampler_第5张图片

textboxes:
  - title: Local weather
    rate-ms: 10000      # sampling rate, default = 1000
    sample: curl wttr.in?0ATQF
    border: false       # border around the item, default = true
    color: 178          # 8-bit color number, default is white
  - title: Docker containers stats
    rate-ms: 500
    sample: docker stats --no-stream --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}\t{{.PIDs}}"

钟声和口哨声

时钟表,显示分钟进度并在每分钟开始时宣布当前时间,搜索引擎延迟图表,当延迟超过阈值时向用户发出警报;

交互式外壳支持

除 Sample 命令外,还可以指定 init 命令(在采样前仅执行一次)和 transform 命令(对 Sample 命令输出进行后处理)。

主要包括:基本模式、PTY模式、多步初始化。

传送门:

https://github.com/sqshq/sampler


原创不易,码字不易。 觉得这篇文章对你有点用的话,麻烦你为本文点个赞留言转发一下,因为这将是我输出更多优质文章的动力,感谢!

⬇⬇⬇⬇⬇⬇⬇⬇

你可能感兴趣的:(Linux,运维,工具篇,可视化,数据库,监控系统,Sampler,命令行工具)