向Graphite发送数据的统计服务器。
statsite的Python项目详细描述
这是一个统计聚合服务器。默认情况下,statsite刷新数据 到Graphite。Statsite的基地很大 在Etsy’s StatsD上。
功能
- 基本关键/价值指标
- 发送计时器数据,statsite将计算: -平均 -最小/最大 -标准差 -所有上述信息百分比指标
- 发送statsite将聚合的计数器
- 用计数器发送一个采样率,Statsite会将其纳入 聚合时的帐户。
安装
从pypi安装statsite:
pip install statsite
或从源代码下载并安装:
python setup.py install
用法
statsite最好使用文件进行配置,尽管 也可以通过命令行设置配置参数。 下面是一个配置文件示例:
# Settings for the "collector" which is the UDP listener [collector] host = 0.0.0.0 port = 8125 # Specify settings for the metrics "store" which is where graphite is [store] host = 0.0.0.0 port = 2003
然后运行statsite,将其指向该文件(假设现在/etc):
statsite -c /etc/statsite.conf
协议
默认情况下,statsite将监听udp包,这使得它非常 对你的应用程序来说,向服务器发送和忘记数据包是很便宜的。信息 如下所示(标志是可选的):
key:value|type[|@flag]
如果在 同样的包裹。
当前支持的消息类型:
- kv-简单键/值。如果给出一个标志,它被认为是时间戳 键/值对的。
- ms-定时器。如果给出一个标志,则将其视为 定时器。
- c-计数器。在刷新间隔之后,同一密钥的计数器是 聚合后发送到存储区。
示例:
下面是一个简单的键/值对,在本例中报告 上一秒我们在mysql上看到的查询:
mysql.queries:1381|kv|@1313107325
以下是计时器,用于计时API调用的响应速度:
api.session_created:114|ms
下面是另一个计时器,但这次是说我们在 API请求的1/10。
api.session_created:114|ms|@0.1
下一个例子是将“奖励”计数器递增1:
rewards:1|c
此示例将“库存”计数器减少7:
inventory:-7|c
如前所述,多个消息可以通过换行连接在一起。