2 个不稳定版本

0.2.0 2019年12月4日
0.1.0 2019年10月16日

#276 in 性能分析

GPL-3.0 或更高版本

17KB
184

disturbance

Crate Build Status

监控 Web 服务行为的干扰。

你可以使用 disturbance 作为监控工具,长时间运行以了解服务是否曾经宕机或不健康。例如:部署期间的正常运行时间。

用法

USAGE:
    disturbance [OPTIONS] <url>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -e, --excludes <excludes>          Response should not match
    -m, --matches <matches>            Response should match
    -p, --parallelism <parallelism>    Parallelism [default: 2]
    -t, --timeout <timeout>            Request timeout in seconds [default: 5]
    -w, --wait <wait>                  Wait time (in ms) between requests per worker. [default: 100]

ARGS:
    <url>    The web service's URL to monitor``

示例

  • 检查网站对简单 GET 请求的响应分布。

    $ disturbance https://example.com/
    Success(200) => 14
    
  • 检查网站,同时要求存在某种模式。
    在响应中不存在该模式的模式

    $ disturbance https://example.com/ -m test
    DoesNotMatch => 407
    

    间歇性匹配(可能不稳定的网站)

    $ disturbance https://example.com/ -m true
    Success(200) => 64, DoesNotMatch => 10
    
  • 使用排除模式,以确保响应永远不会包含你提供的字符串。

    $ disturbance https://example.com/ -e '"success":false'
    DoesNotExclude => 12
    

    或者是一个好的服务

    $ disturbance https://example.com/ -e '"success":true'
    Success(200) => 18
    
  • 配置并行度以控制并行工作进程的数量(默认为 2)。

    $ disturbance https://example.com/ -p 4
    Success(200) => 128
    
  • 设置自定义的超时时间(默认 5 秒)

    $ disturbance https://example.com/ -t 1
    ErrorResponse("https://example.com/: timed out") => 4
    
  • 设置自定义的请求之间的等待时间(默认:100 毫秒),每个工作进程。如果你想

    $ disturbance https://example.com/ -t 1 -w 500
    ErrorResponse("https://example.com/: timed out") => 4
    

依赖项

~21–30MB
~531K SLoC