10个版本

使用旧的Rust 2015

0.1.9 2018年7月28日
0.1.8 2018年5月13日
0.1.7 2017年9月20日
0.1.6 2017年3月9日
0.1.0 2016年8月29日

#896机器学习

Download history 8/week @ 2024-03-30 1/week @ 2024-04-06 64/week @ 2024-06-29

每月64 次下载

GPL-3.0+

380KB
679

Staccato

Build Status crates.io

命令行统计!

Staccato (st 简称) 是一个命令行程序,允许您从文件或标准输入中的值计算统计信息。它可以计算数字流的各种信息,如最小值、最大值、平均值、中位数和标准差。它还可以计算流中某些子集的信息,例如值的下95%。

特性

很多!更多示例即将推出!

安装

Staccato 是一个 Rust 项目。目前,您需要安装 Rust 工具链来安装它。有关如何安装 Rust 的更多信息,请参阅 https://www.rustup.rs/

安装 Rust 后,您可以从源代码构建 Staccato。

cargo install --force staccato
st --help

示例

以下提供了如何使用 Staccato 的示例。请注意,这些示例假设您熟悉标准 Unix 命令行工具,如 awkcuttail

数值文件

Staccato 最明显的用途是当您已经有一个包含数字的文件,并想了解有关它们的信息时。例如,假设您有一个名为 timings.log 的文件,其内容如下

0.572124
0.623724
1.043369
0.563586
1.603538
0.540765
1.677319
0.170808
0.147564

要获取这些值的统计信息,您可以像这样运行 Staccato

$ st timings.log
count: 9
sum: 6.94279
mean: 0.77142
upper: 1.67731
lower: 0.14756
median: 0.57212
stddev: 0.52650

应用程序日志文件

Staccato 的另一个良好用途是从日志文件中的某些特定字段或值计算统计信息。假设您有一个名为 access.log 的访问日志,用于您的 Web 应用程序,其内容如下

2016-08-29T02:14:32 GET /some-url-path/?foo=bar 200 3.84639

... 其中日志中的字段表示

$TIMESTAMP $HTTP_METHOD $REQUEST_URL $HTTP_RESPONSE $RESPONSE_TIME_IN_MS

要获取有关应用程序最近 100 个响应时间的统计信息,您可能使用 Staccato 如此

$ tail -n 100 /var/log/my-application/access.log | cut -d ' ' -f 5 | st
count: 100
mean: 0.20346
upper: 3.84639
lower: 0.00577
median: 0.02101
stddev: 0.60871

源代码可在GitHub上找到:https://github.com/tshlabs/staccato

变更

Staccato的发行说明可在CHANGES.md文件中找到。

开发

Staccato使用Cargo执行各种开发任务。

构建Staccato

$ cargo build

运行测试

$ cargo test

运行基准测试

$ cargo bench

构建文档

$ cargo doc

许可

Staccato可在GPLv3许可条款下使用。查看许可证

贡献

除非您明确声明,否则您有意提交的任何贡献,旨在包含在作品中,应按照上述许可进行,不附加任何额外条款或条件。

依赖项

约750KB