Statistics in Go - CLI tool for quick statistical analysis of data streams
Please see the docs for details on the commands.
$ sig --help
NAME:
sig - Statistics in Go - CLI tool for quick statistical analysis of data streams
USAGE:
sig [global options] command [command options] [arguments...]
AUTHOR:
Derek Smith <derek@clokwork.net>
COMMANDS:
simple simple statistics - one time batch process
stream stream process
version, v Print version info
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--help, -h show help (default: false)
--version, -v print the version (default: false)
COPYRIGHT:
(c) 2022 Derek Smith
$ cat tmp/random.log | sig simple
N Min Max Mean Mode Median Sum Std Dev Variance p50 p75 p90 p95 p99 Q1 Q2 Q3 Outliers Mild Extreme
17021 0 255 127.84 70 127 2.176007e+06 74.0224 5479.3108 127 192 231 243 253 64 127 192 0 0 0
$ sig simple -t -p 'tmp/*.log'
N 17021
Min 0
Max 255
Mean 127.84
Mode 70
Median 127
Sum 2.176007e+06
Std Dev 74.0224
Variance 5479.3108
p50 127
p75 192
p90 231
p95 243
p99 253
Q1 64
Q2 127
Q3 192
Outliers 0
Mild 0
Extreme 0
$ cat tmp/random.log | sig stream
N 5000000
Min 1258
Max 2084
Mean 2.28595
Mode 239
Median 224.55
Sum 1.139274e+07
Std Dev 4.717073
Variance 22.24969850
p50 2245
p75 2245.5
p90 4445
p95 5145
p99 117.55
Q1 107.5
Q2 224.55
Q3 224.55
Outliers 538195
Mild 341450
Extreme 196745
[22] next refresh at N modulo 1,000,000 == 0
... THEN ...
N 11388121
Min 1
Max 2084
Mean 1.56
Mode 1
Median 1
Sum 1.7780861e+07
Std Dev 3.1893
Variance 10.1714
p50 1
p75 2
p90 2
p95 3
p99 7
Q1 1
Q2 1
Q3 2
Outliers 538195
Mild 341450
Extreme 196745
Done. Processed 11,388,121 rows
More to come ...
Homebrew (for macOS users)
brew tap clok/sig
brew install sig
$ curl https://i.jpillora.com/clok/sig! | bash
The compiled docker images are maintained on GitHub Container Registry (ghcr.io). We maintain the following tags:
edge
: Image that is build from the currentHEAD
of the main line branch.latest
: Image that is built from the latest released versionx.y.z
(versions): Images that are build from the tagged versions within Github.
docker pull ghcr.io/clok/sig
docker run -v "$PWD":/workdir ghcr.io/clok/sig --version
To install man
page:
$ sig install-manpage
- Fork the clok/sig repo
- Use
go >= 1.17
- Branch & Code
- Run linters š§¹
golangci-lint run
- The project uses golangci-lint
- Commit with a Conventional Commit
- Open a PR
We employ git-chglog to manage the CHANGELOG.md. For the versions available, see the tags on this repository.
- Derek Smith - @clok
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE file for details