Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[reporter][counter] Align metrics from libtsdb-go and metrics/result.go #38

Open
2 of 3 tasks
at15 opened this issue Mar 12, 2018 · 1 comment
Open
2 of 3 tasks
Milestone

Comments

@at15
Copy link
Member

at15 commented Mar 12, 2018

Currently there are three places we define metrics

  • libtsdb-go return net/http/httptrace results on http clients
  • metrics/result.go contains some numbers but not all of them can be obtained in what is exposed by libtsdb-go
  • counter has some numbers, most of them are not updated correctly

TODO

  • works with http based tsdb clients
  • compatible with raw tcp based client, i.e. graphite
  • return result in finalize stage so it can be written to somewhere by manager
@at15 at15 added this to the Week 10 milestone Mar 12, 2018
at15 added a commit that referenced this issue Mar 12, 2018
[reporter] Init counter reporter

- add counter reporter, the metrics are not aligned with libtsdb yet #38 
- created empty multi and tsdb reporter
- use buffered channel to send report to a single go routine reporter
@at15
Copy link
Member Author

at15 commented Mar 13, 2018

what ycsb has is

  • avg throughput
  • total operations
  • latency, min, max, percentile
  • time series of latency, reported in a window (not every request is reported)
    • if QPS is limited, the wait time is not included in report, only the real latency is reported

the Client measures the end to end latency of executing a particular operation against the database.

at15 added a commit to libtsdb/libtsdb-go that referenced this issue Mar 17, 2018
at15 added a commit to libtsdb/libtsdb-go that referenced this issue Mar 18, 2018
[metrics] Align metrics returned by client with Xephon-B's interface

- based on xephonhq/xephon-b#38
- copy the interface to libtsdb from Xephon-B, Xephon-B will be using interface from libtsdb
- HttpTrace and Trace that implements the interface
- two trace struct in client, trace and prevTrace, copy to prevTrace and reset trace after each send
- when using `Trace`, a temp copy is created to avoid using current struct and read modified data later on
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant