About Sampler
Sampler is a command-line tool for executing shell commands, visualizing their output and raising alerts, all configured with a simple YAML file. The idea is that anything you can measure with a shell command can be shown as a live chart in the terminal, whether that is database changes, message queue depth or the completion of a deployment script. It is aimed at developers and operators who want quick insight without standing up a monitoring stack.
Using it is a three-step process: define the commands in a YAML configuration, run sampler with that file, and adjust the size and position of components on the screen. The README says it is not an alternative to full-scale monitoring systems, but a development tool for cases where setting up Prometheus and Grafana would be overkill. There are no servers, databases or deployments, and it can run locally while still collecting telemetry from multiple remote machines.
It can be installed with Homebrew, MacPorts, Linux package managers, Chocolatey (Windows support is experimental), or Docker. A system sound library is needed on Linux for audible alert tones. Sampler is written in Go and licensed under GPL-3.0.
Key features
- Runs shell commands at set intervals
- Live terminal charts of command output
- Alerts including sound triggers
- YAML-based configuration
- No server or database required
- Gathers metrics from multiple machines
Good fit for
- →Watching a database or queue from the terminal
- →Getting notified when a deployment script finishes
- Built with
- Go
- Tags
- monitoring
- terminal
- cli
- visualization
- shell
- alerting
- golang
- yaml
Sampler: questions and answers
- What is Sampler used for?
- Sampler is a terminal tool that runs shell commands on an interval and visualizes the output as live charts with alerts, configured through a YAML file. It is a good fit for watching a database or queue from the terminal and getting notified when a deployment script finishes.
- Is Sampler open source?
- Yes. Sampler is open source under the GPL-3.0 licence. Its source code is on GitHub at sqshq/sampler and is written mainly in Go.
- Is Sampler free?
- Yes. Sampler is open source, so the software itself is free to use.
- What are some alternatives to Sampler?
- Similar open-source tools in the Monitoring & Observability category include Bottom, s-tui and ctop. SaaS products in the same category include Cronwatch, Loggly and Nagios XI.
- Is Sampler actively maintained?
- The most recent commit to Sampler was on 22 February 2024, and the latest release is v1.1.0, published on 24 December 2019. The project has 15k stars on GitHub.
Open-source alternatives to Sampler
See allBottom
Monitoring & Observability
Yet another cross-platform graphical process/system monitor.
MIT★ 14ks-tui
Monitoring & Observability
Terminal-based CPU stress and monitoring utility
GPL-2.0★ 5.1k
ctop
Monitoring & Observability
Top-like interface for container metrics
MIT★ 18k
Grafana
Monitoring & Observability
The open and composable observability and data visualization platform. Visualize metrics,
AGPL-3.0vs Datadog★ 77k
Nightingale
Monitoring & Observability
Nightingale is to monitoring and alerting what Grafana is to visualization.
Apache-2.0★ 13k
Gatus
Monitoring & Observability
Create beautiful, automated status pages with advanced monitoring. Track HTTP, DNS, TCP en
Apache-2.0vs UptimeRobot★ 12k
SaaS alternatives to Sampler
See allCronwatch
Monitoring & Observability
Monitors cron jobs and background tasks and alerts developers when runs fail or are missed
SaaS
Loggly
Monitoring & Observability
Cloud log management with search, dashboards and alerting
SaaS
Nagios XI
Monitoring & Observability
Commercial monitoring platform for servers, networks and applications built on Nagios
SaaS
Amazon CloudWatch
Monitoring & Observability
AWS service for metrics, logs, alarms and dashboards
SaaS
AppDynamics
Monitoring & Observability
Cisco application performance monitoring that maps technical metrics to business impact
SaaS
AppSignal
Monitoring & Observability
Application monitoring for Ruby, Elixir, Node.js and Python with errors and metrics
SaaS

