{"repo":"jamiealquiza/tachymeter","free":true,"listed":false,"github":"https://github.com/jamiealquiza/tachymeter","clone":"git clone https://github.com/jamiealquiza/tachymeter.git","description":"A Go library for timing things and yielding rates, percentiles, and histograms","language":"Go","stars":141,"topics":["golang","performance","metrics","histogram","telemetry","percentiles","latency"],"license":"MIT","category":"analytics","readme_excerpt":"tachymeter Tachymeter captures event timings and returns latency and rate statistics: \"In a loop with 1,000 database calls, what was the 95%ile and lowest observed latency? What was the per-second rate?\" Tachymeter stores data in a lossless sliding window. This means it's accurate but take o(n) space in relation to the desired sample size. Examples Code examples. Tachymeter is also suitable for general purpose use, such as load testing tools. Usage After initializing a tachymeter , event durations in the form of time.Duration are added using the AddTime(t time.Duration) call. Once all desired timing have been collected, the data is summarized by calling the Calc() , returning a Metrics ). Metrics fields can be accessed directly or via other output methods. Output Descriptions - Cumulative : Aggregate of all sample durations. - HMean : Event duration harmonic mean. - Avg. : Average event duration per sample. - p : Nth %ile. - Long 5% : Average event duration of the longest 5%. - Short 5% : Average event duration of the shortest 5%. - Max : Max observed event duration. - Min : Min observed event duration. - Range : The delta between the max and min sample time - StdDev : The population standard deviation - Rate/sec. : Per-second rate based on cumulative time and sample count. Output Methods Tachymeter output is stored in two primary forms: - A Metrics , which holds the calculated percentiles, rates and other information detailed in the Output Descriptions section - A Histogram ","default_branch":null,"files":null,"tree":[],"storefront":"/r/jamiealquiza","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/jamiealquiza/tachymeter/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}