zoukankan      html  css  js  c++  java
  • WEB监控系列第四篇:statsd指南


    用法:

    http://pypi.python.org/pypi/python-statsd/1.5.2与我安装的不是很一样,稍作修改再用(使用help(statsd)查看用法)

    一 概念说明

    这个是使用说明跟下面描述的statsd的用法不是很一样。可能是不同版本所致。

    Concepts

    • bucketsEach stat is in its own "bucket". They are not predefined anywhere. Bucketscan be named anything that will translate to Graphite (periods make folders,etc)

    • valuesEach stat will have a value. How it is interpreted depends on modifiers. Ingeneral values should be integer.

    • flushAfter the flush interval timeout (defined by config.flushInterval,default 10 seconds), stats are aggregated and sent to an upstream backend service.

    Counting

    gorets:1|c
    

    This is a simple counter. Add 1 to the "gorets" bucket.At each flush the current count is sent and reset to 0.If the count at flush is 0 then you can opt to send no metric at all forthis counter, by settingconfig.deleteCounters (applies only to graphitebackend). Statsd will send both the rate as well as the count at each flush.

    Sampling

    gorets:1|c|@0.1
    

    Tells StatsD that this counter is being sent sampled every 1/10th of the time.

    Timing

    glork:320|ms
    

    The glork took 320ms to complete this time. StatsD figures out percentiles,average (mean), standard deviation, sum, lower and upper bounds for the flush interval.The percentile threshold can be tweaked withconfig.percentThreshold.

    The percentile threshold can be a single value, or a list of values, and willgenerate the following list of stats for each threshold:

    stats.timers.$KEY.mean_$PCT
    stats.timers.$KEY.upper_$PCT
    stats.timers.$KEY.sum_$PCT
    

    Where $KEY is the stats key you specify when sending to statsd, and$PCT isthe percentile threshold.

    Gauges

    StatsD now also supports gauges, arbitrary values, which can be recorded.

    gaugor:333|g
    

    Sets

    StatsD supports counting unique occurences of events between flushes,using a Set to store all occuring events.

    uniques:765|s
    


    Multi-Metric Packets

    StatsD supports receiving multiple metrics in a single packet by separating themwith a newline.

    gorets:1|c\nglork:320|ms\ngaugor:333|g\nuniques:765|s
    

    二 具体使用

    1

    下面是python版本的statsd的用法:

    import python

    import statsd

    使用help(statsd)观察statsd的用法

    ccc=statsd.client.StatsClient(host='127.0.0.1',port=8125)#建立链接

    ccc.incr("hello",5)#把hello这个值增加5


    2变量的路径

    你使用statsd发送的数据,例如上面的变量hello是在stats 和stats_count路径下面。

    假如你定义了local.random.diceroll这样一个变量,并且不使用statsd发送,那么它会产生再根目录下。echo "local.random.diceroll 4 `date +%s`" | nc ${SERVER} ${PORT};






    所有函数的定义:

     class StatsClient(__builtin__.object)
         |  A client for statsd.
         |  
         |  Methods defined here:
         |  
         |  __init__(self, host='localhost', port=8125, prefix=None)
         |      Create a new client.
         |  
         |  decr(self, stat, count=1, rate=1) #减少一个值stat的大小count (rate是抽样的比例)
         |      Decrement a stat by `count`.
         |  
         |  gauge(self, stat, value, rate=1)#设置一个值stat的大小
         |      Set a gauge value.
         |  
         |  incr(self, stat, count=1, rate=1)#增加一个值stat的大小count (rate是抽样的比例)
         |      Increment a stat by `count`.
         |  
         |  timer(self, stat, rate=1)#发送一个时间值stat
         |  
         |  timing(self, stat, delta, rate=1) #微秒
         |      Send new timing information. `delta` is in milliseconds.
         |  


    网上还有其它语言版本的statsd,似乎使用起来更加方便






  • 相关阅读:
    Fortify Audit Workbench Cookie Security: Cookie not Sent Over SSL
    Fortify Audit Workbench 笔记 Access Control: Database
    MATLAB中的polyfit函数的使用方法
    编写python代码时出现SyntaxError: invalid character in identifier的解决方法
    Windows10安装MinGW-W64出现Cannot download repository.txt的一种解决方法
    使用IDM下载B站视频出现声音跟视频分离的一种解决方法
    简洁桌面(使用Windows自带的桌面整理功能)
    MATLAB标记图像中特殊的点
    解决python使用pip安装下载库出现错误:ERROR:Cannot unpack file xxxx情况
    解决python使用pip下载安装库速度慢问题
  • 原文地址:https://www.cnblogs.com/catkins/p/5270668.html
Copyright © 2011-2022 走看看