sampler is a GPL licensed terminal data visualizer written in [[Go|Golang]].
- Website
- [Github](https://github.com/sqshq/sampler)
> Sampler is a tool for shell commands execution, visualization and alerting. Configured with a simple YAML file.
# Notability
Uses a configuration file to parse incoming data from any commandline process (like `tail` or `ping`) and generate graphs in an ANSI compatible terminal.
> One can sample any dynamic process right from the terminal — observe changes in the database, monitor MQ in-flight messages, trigger a deployment script and get notification when it's done.
>
> If there is a way to get a metric using a shell command, then it can be visualized with Sampler momentarily.
# Philosophy
> Sampler is by no means an alternative to full-scale monitoring systems, but rather an easy to setup development tool.
>
> If spinning up and configuring Prometheus with Grafana is complete overkill for you task, Sampler might be the right solution. No servers, no databases, no deploy - you specify shell commands, and it just works.
# OS Support
Primarily works on [[Linux]] and [[MacOS]] but has some experimental [[Windows]] support.
# Features
> you can run Sampler on local, but still gather telemetry from multiple remote machines. Any visualization might have `init` command, where you can ssh to a remote server. See the [SSH example](https://github.com/sqshq/sampler#ssh)
- Define your shell commands in a YAML configuration file
- Run `sampler -c config.yml`
- Adjust components size and location on UI