Outgoing byte rate
The metric provides the mean rate of outgoing bytes per second from each stream and each kafka broker at any given time.
Value will decrease as the volume and frequency of messages being read from the stream decreases.
Use cases
How much data are all applications consuming from my topic?
It could be useful to know how much data is being consumed from the topic or from the broker. So you can estimate your network needs better.
To do so, please, refer to the Using aggregator or Using groupBy. This examples will help to build a request for topic or for each broker based on your needs.
Basic usage
Please refer to the example outgoing byte rate
provided in the API docs
This request is asking for outgoing byte rate per second, averaged over the entire provided rate-size [5M] (default value) from stream payment-events-stream
on environment dev
for last 15 minutes with the step-size of 1 minute.
Basic Request
{ "metric": "io.axual.stream/outgoing_byte_rate", "stepSize": "PT1M", "timeWindow": "PT15M", "filter": { "type": "AND", "filters": [ { "type": "FIELD", "field": "environment", "operation": "EQUALS", "value": "dev" }, { "type": "FIELD", "field": "stream", "operation": "EQUALS", "value": "payment-events-stream" } ] } }
The below part of sample response, represents the outgoing byte rate from the stream from each kafka broker.
Basic Response
{ "type": "UNGROUPED", "dataPoints": [ { "timestamp": "2022-10-25T09:33:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:34:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:35:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:36:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:37:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:38:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:39:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:40:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:41:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:42:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:43:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:44:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:45:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:46:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:47:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:33:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:34:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:35:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:36:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:37:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:38:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:39:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:40:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:41:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:42:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:43:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:44:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:45:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:46:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:47:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:33:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:34:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:35:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:36:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:37:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:38:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:39:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:40:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:41:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:42:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:43:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:44:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:45:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:46:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:47:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null } ] }
This metric can be used to determine how much load is being generated by individual streams.
Advanced usage
Using aggregator
By adding aggregator
to the request, the outgoing byte rate of the stream will be aggregated over all kafka brokers.
For instance asking for the sum
aggregation function, will result in the sum of outgoing byte rate of the stream among all existing kafka brokers.
Request using sum aggregator
{ "metric": "io.axual.stream/outgoing_byte_rate", "stepSize": "PT1M", "timeWindow": "PT15M", "aggregator": "sum", "filter": { "type": "AND", "filters": [ { "type": "FIELD", "field": "environment", "operation": "EQUALS", "value": "dev" }, { "type": "FIELD", "field": "stream", "operation": "EQUALS", "value": "payment-events-stream" } ] } }
The below response represents the outgoing bytes rate of the stream on a Kafka cluster.
Response using sum aggregator
{ "type": "UNGROUPED", "dataPoints": [ { "timestamp": "2022-10-25T09:33:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:34:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:35:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:36:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:37:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:38:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:39:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:40:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:41:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:42:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:43:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:44:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:45:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:46:00", "value": 0, "labels": {}, "unit": null }, { "timestamp": "2022-10-25T09:47:00", "value": 0, "labels": {}, "unit": null } ] }
Using max instead of sum will result in maximum outgoing rate from a single broker.
Using groupBy
If you want to get response grouped by some label - you can use groupBy
Request using groupBy
{ "metric": "io.axual.stream/outgoing_byte_rate", "stepSize": "PT1M", "timeWindow": "PT15M", "groupBy": ["pod"], "filter": { "type": "AND", "filters": [ { "type": "FIELD", "field": "environment", "operation": "EQUALS", "value": "dev" }, { "type": "FIELD", "field": "stream", "operation": "EQUALS", "value": "payment-events-stream" } ] } }
The below response represents the rate in bytes of the partition on each Kafka broker (pod), with data grouped by pod.
Response using groupBy
{ "type": "GROUPED", "groups": [ { "labels": { "pod": "jupiter-kafka-0" }, "dataPoints": [ { "timestamp": "2022-10-25T09:33:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:34:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:35:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:36:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:37:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:38:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:39:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:40:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:41:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:42:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:43:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:44:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:45:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:46:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:47:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-0", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null } ] }, { "labels": { "pod": "jupiter-kafka-1" }, "dataPoints": [ { "timestamp": "2022-10-25T09:33:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:34:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:35:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:36:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:37:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:38:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:39:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:40:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:41:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:42:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:43:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:44:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:45:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:46:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:47:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-1", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null } ] }, { "labels": { "pod": "jupiter-kafka-2" }, "dataPoints": [ { "timestamp": "2022-10-25T09:33:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:34:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:35:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:36:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:37:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:38:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:39:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:40:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:41:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:42:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:43:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:44:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:45:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:46:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null }, { "timestamp": "2022-10-25T09:47:00", "value": 0, "labels": { "axual_cluster": "jupiter", "pod": "jupiter-kafka-2", "topic": "axual-qa-dev-payment-events-stream" }, "unit": null } ] } ] }