Details
-
Improvement
-
Resolution: Fixed
-
Major
-
5.5.0
Description
We need to expose below on Console:
Please refer to the sample JSON used in the documentation for the below description -
Here are the statistics that have to be displayed in the UI.
Title | Description | From JSON |
---|---|---|
Processed | Mutations for which the function has finished processing | execution_stats.on_update_success + execution_stats.on_delete_success |
Failures | Mutations for which the function execution failed | failure_stats.bucket_op_exception_count <br> + failure_stats.checkpoint_failure_count + failure_stats.n1ql_op_exception_count + failure_stats.timeout_count + execution_stats.doc_timer_create_failure + execution_stats.non_doc_timer_create_failure |
Backlog | Mutations yet to be processed by the function | events_remaining.dcp_backlog |
Timeouts | Function execution timed-out while processing. | failure_stats.timeout_count |
The above stats have to be displayed per function.
Aggregation
The stats have to be aggregated across nodes, for each function. For example -
GET http://node1:8096/api/v1/stats returns [{stats for f1 for node1}, {stats for f2 for node1}] |
|
GET http://node2:8096/api/v1/stats returns [{stats for f1 for node2}, {stats for f2 for node2}] |
|
Aggregated stats for f1 = {stats for f1 for node1} + {stats for f1 for node2} |
|
Aggregated stats for f2 = {stats for f2 for node1} + {stats for f2 for node2} |
Location of display
Presentation format is similar to GSI - an expandable accordion for each defined function, under which the stats, aggregated for that function from all nodes are graphed. However, unlike GSI, eventing functions are not scoped by buckets.
Attachments
Issue Links
For Gerrit Dashboard: MB-26581 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
86169,8 | [MB-26581] Background routine to poll for CPP worker stats | unstable | eventing | Status: MERGED | +2 | +1 |
86195,13 | [MB-26581] Add /stats endpoint to get stats | unstable | eventing | Status: MERGED | +2 | +1 |
86353,3 | [MB-26581] Avoid plasma stats request if plasma store is uninitialized | unstable | eventing | Status: MERGED | +2 | +1 |
86356,1 | [MB-26581] Make GET /api/v1/stats respond spontaneously | unstable | eventing | Status: ABANDONED | 0 | +1 |
86363,3 | [MB-26581] Return cached results for dcp seqs processed and backlog | unstable | eventing | Status: MERGED | +2 | +1 |
86609,2 | [MB-26581] Omit empty fields from stats endpoint | unstable | eventing | Status: MERGED | +2 | +1 |
88076,13 | MB-26581 eventing stats implementation | master | ns_server | Status: MERGED | +2 | +1 |