Api Keys endpoints
User endpoints
Export endpoints
Logs endpoints
Usage endpoints
Search endpoints
Poll a Query In Progress
Bronto provides an async API for long-running queries, which allows users to poll an in-progress query to monitor its progress and to receive partial results. It also allows an API client to handle multiple requests concurrently without blocking, and is more tolerant of network failures since a query will continue to execute if a connection is broken. Additionally it allows clients to cancel requests they are no longer interested in. For extremely long running queries it helps avoid issues due to timeouts.
When the client makes an async query request, the server will initially respond with either a 201
or a 202
response code.
The 201
response code is returned if the query was very short and the results are immediately available.
Otherwise, if the query has started and is in-progress, the server will return a 202
response code and the
response body will contain a status endpoint link (/search/status/<status id>
) which should be polled periodically.
When polled, the server will continue to respond with a 202
response code if the query is still in-progress, or it
will respond with a 201
response code if the query has completed.
The link must be polled at least once every 1 minute, otherwise the query will be cancelled.
Once a query is completed the results can be retrieved using the status endpoint for at least 5 minutes,
and up to 7 days (if the query results have expired the server will respond with a 410
response code).
curl --request GET \
--url https://api.eu.bronto.io/search/status/{statusId} \
--header 'X-BRONTO-API-KEY: <api-key>'
{
"status": "IN_PROGRESS",
"progress": 56,
"start_time": "Tue Aug 06 15:24:15 GMT 2024",
"explain": {
"Execution time (millis)": "353"
},
"result": [
{
"@time": "2024-03-27 10:25:40.632 UTC",
"@sequence": "111721913",
"@raw": "10.0.0.1 - - [27/Mar/2024:10:54:39 +0000] \"GET / HTTP/1.1\" 200 721 \"-\" \"ELB-HealthChecker/2.0\"",
"@context": "https://api.bronto.io/context?sequence=111721913&limit=1&from=23746675-7022-4985-bd74-4af9eba58d72×tamp=1711535140632&direction=both",
"metadata": {
"logId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"timestamp": 1711535140632,
"sequence": 111721913,
"origin": "10.0.0.1",
"context": "https://api.bronto.io/context?sequence=111721913&limit=1&from=23746675-7022-4985-bd74-4af9eba58d72×tamp=1711535140632&direction=both",
"selectedKeys": {
"@time": "2024-03-27 10:25:40.632 UTC"
},
"unselectedKeys": {
"id": "message_0",
"current_time": 1711535140
}
},
"links": [
{
"rel": "context",
"href": "https://api.bronto.io/context?sequence=111721913&limit=1&from=23746675-7022-4985-bd74-4af9eba58d72×tamp=1711535140632&direction=both"
}
]
}
],
"events": [
{
"@raw": "10.0.108.203 - - [27/May/2024:23:47:27 +0000] \"GET / HTTP/1.1\" 200 675 \"-\" \"ELB-HealthChecker/2.0\"",
"@time": "2024-05-27 23:26:34.331 UTC",
"@status": "info",
"message_kvs": {
"method": "GET",
"statusCode": "200",
"path": "/"
},
"attributes": {
"$private_ip": "10.0.22.230",
"$environment": "production"
},
"metadata": {
"service_id": "23746675-7022-4985-bd74-4af9eba58d72",
"timestamp": 1716853347801,
"sequence": 111721913,
"context": "\"https://api.eu.bronto.io/context?sequence=213&from=37bdf479-7c95-4e81-982a-25d0680fb602×tamp=1716853354331&direction=both\"\n"
},
"links": [
{
"rel": "context",
"href": "https://api.bronto.io/context?sequence=111721913&limit=1&from=23746675-7022-4985-bd74-4af9eba58d72×tamp=1711535140632&direction=both"
}
]
}
],
"groups": [
{
"group": "[US]",
"count": 124,
"stat": "average(bytes)",
"value": 50325.25,
"timeseries": [
{
"@timestamp": "1711535140632",
"count": 40,
"value": 35.625,
"quantiles": {
"min": 691,
"p25": 713.75,
"p50": 796,
"p75": 847.5,
"p90": 1237,
"p95": 1331,
"p99": 1331,
"p999": 1331,
"max": 1331
}
}
]
}
],
"groups_series": [
{
"name": "host123",
"count": 124,
"stat": "average(duration_millis)",
"value": 50325.25,
"quantiles": {
"min": 691,
"p25": 713.75,
"p50": 796,
"p75": 847.5,
"p90": 1237,
"p95": 1331,
"p99": 1331,
"p999": 1331,
"max": 1331
},
"series_resolution_ms": 60000,
"timeseries": [
{
"@timestamp": "1711535140632",
"count": 40,
"value": 35.625,
"quantiles": {
"min": 691,
"p25": 713.75,
"p50": 796,
"p75": 847.5,
"p90": 1237,
"p95": 1331,
"p99": 1331,
"p999": 1331,
"max": 1331
}
}
],
"groups_series": [
{
"name": "host123",
"count": 124,
"stat": "average(duration_millis)",
"value": 50325.25,
"series_resolution_ms": 60000,
"timeseries": [
{
"@timestamp": "1711535140632",
"count": 40,
"value": 35.625,
"quantiles": {
"min": 691,
"p25": 713.75,
"p50": 796,
"p75": 847.5,
"p90": 1237,
"p95": 1331,
"p99": 1331,
"p999": 1331,
"max": 1331
}
}
]
}
]
}
],
"metadata": {
"select": [
"host",
"status",
"method"
],
"correlation_id": "00000000-0000-0000-0000-000000000000"
},
"totals": {},
"pagination": {
"next_page_url": "<string>"
},
"links": [
{
"rel": "status",
"href": "<string>"
}
]
}
Authorizations
Path Parameters
The status id for the query.
Response
In progress query.
The response is of type object
.
curl --request GET \
--url https://api.eu.bronto.io/search/status/{statusId} \
--header 'X-BRONTO-API-KEY: <api-key>'
{
"status": "IN_PROGRESS",
"progress": 56,
"start_time": "Tue Aug 06 15:24:15 GMT 2024",
"explain": {
"Execution time (millis)": "353"
},
"result": [
{
"@time": "2024-03-27 10:25:40.632 UTC",
"@sequence": "111721913",
"@raw": "10.0.0.1 - - [27/Mar/2024:10:54:39 +0000] \"GET / HTTP/1.1\" 200 721 \"-\" \"ELB-HealthChecker/2.0\"",
"@context": "https://api.bronto.io/context?sequence=111721913&limit=1&from=23746675-7022-4985-bd74-4af9eba58d72×tamp=1711535140632&direction=both",
"metadata": {
"logId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"timestamp": 1711535140632,
"sequence": 111721913,
"origin": "10.0.0.1",
"context": "https://api.bronto.io/context?sequence=111721913&limit=1&from=23746675-7022-4985-bd74-4af9eba58d72×tamp=1711535140632&direction=both",
"selectedKeys": {
"@time": "2024-03-27 10:25:40.632 UTC"
},
"unselectedKeys": {
"id": "message_0",
"current_time": 1711535140
}
},
"links": [
{
"rel": "context",
"href": "https://api.bronto.io/context?sequence=111721913&limit=1&from=23746675-7022-4985-bd74-4af9eba58d72×tamp=1711535140632&direction=both"
}
]
}
],
"events": [
{
"@raw": "10.0.108.203 - - [27/May/2024:23:47:27 +0000] \"GET / HTTP/1.1\" 200 675 \"-\" \"ELB-HealthChecker/2.0\"",
"@time": "2024-05-27 23:26:34.331 UTC",
"@status": "info",
"message_kvs": {
"method": "GET",
"statusCode": "200",
"path": "/"
},
"attributes": {
"$private_ip": "10.0.22.230",
"$environment": "production"
},
"metadata": {
"service_id": "23746675-7022-4985-bd74-4af9eba58d72",
"timestamp": 1716853347801,
"sequence": 111721913,
"context": "\"https://api.eu.bronto.io/context?sequence=213&from=37bdf479-7c95-4e81-982a-25d0680fb602×tamp=1716853354331&direction=both\"\n"
},
"links": [
{
"rel": "context",
"href": "https://api.bronto.io/context?sequence=111721913&limit=1&from=23746675-7022-4985-bd74-4af9eba58d72×tamp=1711535140632&direction=both"
}
]
}
],
"groups": [
{
"group": "[US]",
"count": 124,
"stat": "average(bytes)",
"value": 50325.25,
"timeseries": [
{
"@timestamp": "1711535140632",
"count": 40,
"value": 35.625,
"quantiles": {
"min": 691,
"p25": 713.75,
"p50": 796,
"p75": 847.5,
"p90": 1237,
"p95": 1331,
"p99": 1331,
"p999": 1331,
"max": 1331
}
}
]
}
],
"groups_series": [
{
"name": "host123",
"count": 124,
"stat": "average(duration_millis)",
"value": 50325.25,
"quantiles": {
"min": 691,
"p25": 713.75,
"p50": 796,
"p75": 847.5,
"p90": 1237,
"p95": 1331,
"p99": 1331,
"p999": 1331,
"max": 1331
},
"series_resolution_ms": 60000,
"timeseries": [
{
"@timestamp": "1711535140632",
"count": 40,
"value": 35.625,
"quantiles": {
"min": 691,
"p25": 713.75,
"p50": 796,
"p75": 847.5,
"p90": 1237,
"p95": 1331,
"p99": 1331,
"p999": 1331,
"max": 1331
}
}
],
"groups_series": [
{
"name": "host123",
"count": 124,
"stat": "average(duration_millis)",
"value": 50325.25,
"series_resolution_ms": 60000,
"timeseries": [
{
"@timestamp": "1711535140632",
"count": 40,
"value": 35.625,
"quantiles": {
"min": 691,
"p25": 713.75,
"p50": 796,
"p75": 847.5,
"p90": 1237,
"p95": 1331,
"p99": 1331,
"p999": 1331,
"max": 1331
}
}
]
}
]
}
],
"metadata": {
"select": [
"host",
"status",
"method"
],
"correlation_id": "00000000-0000-0000-0000-000000000000"
},
"totals": {},
"pagination": {
"next_page_url": "<string>"
},
"links": [
{
"rel": "status",
"href": "<string>"
}
]
}