Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
188 views
in Technique[技术] by (71.8m points)

statsd - Graphite returning incorrect datapoint

  • I downloaded statsd and graphite 0.9.x
  • I used the stats-client provided with source of statsd as follows:
    • ./statsd-client.sh 'development.com.alpha.operation.testing.rate:1|c'
  • I did the above operation 10 times.

Then I tried querying for a summary for last 24 hours:

http://example.com/render?format=json&target=summarize(stats.development.com.alpha.operation.testing.rate, "24hours", "sum",true)&from=-24hours&tz=UTC

I get 1 datapoint as follows:

"datapoints": [[0.0, 1386277560]]}]

Why I am getting 0.0? Even Graphite Composer does not display anything

I was expecting a value of "10" as I performed the operation 10 times. What did I do wrong?

storage-schemas.conf

[carbon]
pattern = ^carbon.
retentions = 60:90d

[default_1min_for_1day]
pattern = .*
retentions = 60s:1d

Please help me understand the problem.

EDIT:

As per answer below, I changed storage-aggregation and I get following response after running whisper-info on metric_file.wsp. But I am still getting "0.0" as value in datapoint and Graphite browser does not display anything.

maxRetention: 86400
xFilesFactor: 0.0
aggregationMethod: sum
fileSize: 17308

Archive 0
retention: 86400
secondsPerPoint: 60
points: 1440
size: 17280
offset: 28

I also looked at stats_counts Tree as suggested in another answer, but its the same.

What is wrong with my setup. I am using default setting for everything but the changes suggested by an answer below in storage-aggregation

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Within the whisper package, you will get a script- whisper-info.py. Invoke it on the appropriate metric file-

/whisper-info.py /opt/graphite/storage/whisper/alpha/beta/charlie.wsp

You will get something like this-

maxRetention: 31536000
xFilesFactor: 0.0
aggregationMethod: sum
fileSize: 1261468

Archive 0
retention: 31536000
secondsPerPoint: 300
points: 105120
size: 1261440
offset: 28

Here, make sure that aggregationMethod is sum, and xFilesFactor is 0.0. Most probably it is not, since this isn't graphite's default behavior. Now make a regex that picks up your metrics and put it at the beginning of the config file storage-aggregation.conf. This will ensure that the newly created metrics follow this new aggregation rule. You can read more about how xFilesFactor works here.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...