Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import timeit
- import random
- acc = None
- def sample():
- value = random.random()
- if value >= 0.5:
- return "+" + str(value)
- else:
- return str(value)
- #
- def gauge_delta():
- global acc
- value = sample()
- try:
- if len(str(value)) > 0 and str(value)[0] in ('+'):
- if acc is None:
- acc = 0
- acc += float(value)
- else:
- acc = float(value)
- except ValueError:
- raise Exception("Cannot parse gauge value")
- def gauge():
- value = sample()
- try:
- acc = int(value)
- except ValueError:
- try:
- acc = float(value)
- except ValueError:
- raise Exception("Metric value must be a number")
- def gauge_fast():
- value = sample()
- try:
- acc = float(value)
- except ValueError:
- raise Exception("Metric value must be a number")
- def main():
- print "--- Gauge only ---"
- print timeit.repeat("gauge()", "from __main__ import gauge")
- print "--- Gauge delta ---"
- print timeit.repeat("gauge_delta()", "from __main__ import gauge_delta, acc")
- print "--- Gauge fast ---"
- print timeit.repeat("gauge_fast()", "from __main__ import gauge_fast")
- if __name__ == '__main__':
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement