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.