23 #include "absl/time/time.h"
24 #include "opencensus/stats/internal/aggregation_window.h"
25 #include "opencensus/stats/internal/set_aggregation_window.h"
26 #include "opencensus/stats/stats.h"
34 using ::opencensus::stats::Aggregation;
35 using ::opencensus::stats::AggregationWindow;
36 using ::opencensus::stats::BucketBoundaries;
37 using ::opencensus::stats::ViewDescriptor;
44 Aggregation BytesDistributionAggregation() {
45 return Aggregation::Distribution(BucketBoundaries::Explicit(
46 {0, 1024, 2048, 4096, 16384, 65536, 262144, 1048576, 4194304, 16777216,
47 67108864, 268435456, 1073741824, 4294967296}));
50 Aggregation MillisDistributionAggregation() {
51 return Aggregation::Distribution(BucketBoundaries::Explicit(
52 {0, 0.01, 0.05, 0.1, 0.3, 0.6, 0.8, 1, 2, 3, 4,
53 5, 6, 8, 10, 13, 16, 20, 25, 30, 40, 50,
54 65, 80, 100, 130, 160, 200, 250, 300, 400, 500, 650,
55 800, 1000, 2000, 5000, 10000, 20000, 50000, 100000}));
58 Aggregation CountDistributionAggregation() {
62 ViewDescriptor MinuteDescriptor() {
64 SetAggregationWindow(AggregationWindow::Interval(
absl::Minutes(1)),
69 ViewDescriptor HourDescriptor() {
71 SetAggregationWindow(AggregationWindow::Interval(
absl::Hours(1)),
97 .set_name(
"grpc.io/client/sent_bytes_per_rpc/cumulative")
99 .set_aggregation(BytesDistributionAggregation())
107 .set_name(
"grpc.io/client/received_bytes_per_rpc/cumulative")
109 .set_aggregation(BytesDistributionAggregation())
117 .set_name(
"grpc.io/client/roundtrip_latency/cumulative")
119 .set_aggregation(MillisDistributionAggregation())
127 .set_name(
"grpc.io/client/server_latency/cumulative")
129 .set_aggregation(MillisDistributionAggregation())
137 .set_name(
"grpc.io/client/completed_rpcs/cumulative")
148 .set_name(
"grpc.io/client/received_messages_per_rpc/cumulative")
150 .set_aggregation(CountDistributionAggregation())
158 .set_name(
"grpc.io/client/sent_messages_per_rpc/cumulative")
160 .set_aggregation(CountDistributionAggregation())
168 .set_name(
"grpc.io/client/retries_per_call/cumulative")
170 .set_aggregation(CountDistributionAggregation())
178 .set_name(
"grpc.io/client/retries/cumulative")
180 .set_aggregation(Aggregation::Sum())
188 .set_name(
"grpc.io/client/transparent_retries_per_call/cumulative")
190 .set_aggregation(CountDistributionAggregation())
198 .set_name(
"grpc.io/client/transparent_retries/cumulative")
200 .set_aggregation(Aggregation::Sum())
208 .set_name(
"grpc.io/client/retry_delay_per_call/cumulative")
210 .set_aggregation(MillisDistributionAggregation())
219 .set_name(
"grpc.io/server/received_bytes_per_rpc/cumulative")
221 .set_aggregation(BytesDistributionAggregation())
229 .set_name(
"grpc.io/server/sent_bytes_per_rpc/cumulative")
231 .set_aggregation(BytesDistributionAggregation())
239 .set_name(
"grpc.io/server/elapsed_time/cumulative")
241 .set_aggregation(MillisDistributionAggregation())
249 .set_name(
"grpc.io/server/completed_rpcs/cumulative")
260 .set_name(
"grpc.io/server/received_messages_per_rpc/cumulative")
262 .set_aggregation(CountDistributionAggregation())
270 .set_name(
"grpc.io/server/sent_messages_per_rpc/cumulative")
272 .set_aggregation(CountDistributionAggregation())
281 .set_name(
"grpc.io/client/sent_bytes_per_rpc/minute")
283 .set_aggregation(BytesDistributionAggregation())
291 .set_name(
"grpc.io/client/received_bytes_per_rpc/minute")
293 .set_aggregation(BytesDistributionAggregation())
301 .set_name(
"grpc.io/client/roundtrip_latency/minute")
303 .set_aggregation(MillisDistributionAggregation())
311 .set_name(
"grpc.io/client/server_latency/minute")
313 .set_aggregation(MillisDistributionAggregation())
321 .set_name(
"grpc.io/client/completed_rpcs/minute")
332 .set_name(
"grpc.io/client/sent_messages_per_rpc/minute")
334 .set_aggregation(CountDistributionAggregation())
342 .set_name(
"grpc.io/client/received_messages_per_rpc/minute")
344 .set_aggregation(CountDistributionAggregation())
352 .set_name(
"grpc.io/client/retries_per_call/minute")
354 .set_aggregation(CountDistributionAggregation())
362 .set_name(
"grpc.io/client/retries/minute")
364 .set_aggregation(Aggregation::Sum())
372 .set_name(
"grpc.io/client/transparent_retries_per_call/minute")
374 .set_aggregation(CountDistributionAggregation())
382 .set_name(
"grpc.io/client/transparent_retries/minute")
384 .set_aggregation(Aggregation::Sum())
392 .set_name(
"grpc.io/client/retry_delay_per_call/minute")
394 .set_aggregation(MillisDistributionAggregation())
403 .set_name(
"grpc.io/server/sent_bytes_per_rpc/minute")
405 .set_aggregation(BytesDistributionAggregation())
413 .set_name(
"grpc.io/server/received_bytes_per_rpc/minute")
415 .set_aggregation(BytesDistributionAggregation())
423 .set_name(
"grpc.io/server/server_latency/minute")
425 .set_aggregation(MillisDistributionAggregation())
433 .set_name(
"grpc.io/server/completed_rpcs/minute")
444 .set_name(
"grpc.io/server/sent_messages_per_rpc/minute")
446 .set_aggregation(CountDistributionAggregation())
454 .set_name(
"grpc.io/server/received_messages_per_rpc/minute")
456 .set_aggregation(CountDistributionAggregation())
465 .set_name(
"grpc.io/client/sent_bytes_per_rpc/hour")
467 .set_aggregation(BytesDistributionAggregation())
475 .set_name(
"grpc.io/client/received_bytes_per_rpc/hour")
477 .set_aggregation(BytesDistributionAggregation())
485 .set_name(
"grpc.io/client/roundtrip_latency/hour")
487 .set_aggregation(MillisDistributionAggregation())
495 .set_name(
"grpc.io/client/server_latency/hour")
497 .set_aggregation(MillisDistributionAggregation())
505 .set_name(
"grpc.io/client/completed_rpcs/hour")
516 .set_name(
"grpc.io/client/sent_messages_per_rpc/hour")
518 .set_aggregation(CountDistributionAggregation())
526 .set_name(
"grpc.io/client/received_messages_per_rpc/hour")
528 .set_aggregation(CountDistributionAggregation())
536 .set_name(
"grpc.io/client/retries_per_call/hour")
538 .set_aggregation(CountDistributionAggregation())
546 .set_name(
"grpc.io/client/retries/hour")
548 .set_aggregation(Aggregation::Sum())
556 .set_name(
"grpc.io/client/transparent_retries_per_call/hour")
558 .set_aggregation(CountDistributionAggregation())
566 .set_name(
"grpc.io/client/transparent_retries/hour")
568 .set_aggregation(Aggregation::Sum())
576 .set_name(
"grpc.io/client/retry_delay_per_call/hour")
578 .set_aggregation(MillisDistributionAggregation())
587 .set_name(
"grpc.io/server/sent_bytes_per_rpc/hour")
589 .set_aggregation(BytesDistributionAggregation())
597 .set_name(
"grpc.io/server/received_bytes_per_rpc/hour")
599 .set_aggregation(BytesDistributionAggregation())
607 .set_name(
"grpc.io/server/server_latency/hour")
609 .set_aggregation(MillisDistributionAggregation())
617 .set_name(
"grpc.io/server/completed_rpcs/hour")
628 .set_name(
"grpc.io/server/sent_messages_per_rpc/hour")
630 .set_aggregation(CountDistributionAggregation())
638 .set_name(
"grpc.io/server/received_messages_per_rpc/hour")
640 .set_aggregation(CountDistributionAggregation())