API - Get Index Request Log

Logs & Analytics
Logs & Analytics API

Get Index Request Log

Query your full Solr request log using standard Solr query parameters. Filter, sort, facet, and paginate through every request made to your index.

Endpoint

GET https://opensolr.com/solr_manager/api/request_log

Parameters

ParameterStatusDescription
emailRequiredYour Opensolr registration email address
api_keyRequiredYour Opensolr API key
core_nameRequiredThe name of the index to get the request log for
qOptionalSearch query (default: *:* — all requests)
startOptionalPagination offset (default: 0)
rowsOptionalNumber of results per page (default: 10)
sortOptionalSort field and direction (e.g., date desc)
fq[]OptionalFilter queries — use multiple fq[] for AND. Example: fq[]=date:[NOW-1DAY TO NOW]
wtOptionalResponse format: json (default), csv, xml
facetOptionalEnable faceting: true
facet.field[]OptionalFields to facet on: ip, path, q, http_status, core_name
The request log supports most Solr Query Syntax parameters. Array parameters like fq and facet.field use square brackets: fq[]=...&fq[]=.... Exclude empty queries with fq[]=-q:"". Exclude wildcards with fq[]=-q:"*:*".

Code Examples

cURL — Error requests between two dates

curl -gs "https://opensolr.com/solr_manager/api/request_log?email=YOUR_EMAIL&api_key=YOUR_API_KEY&core_name=my_index&start=0&sort=date%20desc&rows=10&fq[]=date:[2023-01-01T00:00:00Z%20TO%202023-05-31T00:00:00Z]&facet=true&facet.field[]=core_name&fq[]=-http_status:200"

PHP — Paginated request log

$params = http_build_query([
    'email'     => 'YOUR_EMAIL',
    'api_key'   => 'YOUR_API_KEY',
    'core_name' => 'my_index',
    'start'     => 0,
    'rows'      => 50,
    'sort'      => 'date desc',
    'wt'        => 'json',
]);
$url = "https://opensolr.com/solr_manager/api/request_log?{$params}"
     . "&fq[]=" . urlencode("date:[NOW-7DAY TO NOW]");

$response = file_get_contents($url);
$data = json_decode($response, true);
foreach ($data['response']['docs'] as $doc) {
    echo $doc['date'] . " | " . $doc['http_status'] . " | " . ($doc['q'] ?? '') . "\n";
}

Python — Faceted request analysis

import requests

response = requests.get("https://opensolr.com/solr_manager/api/request_log", params={
    "email": "YOUR_EMAIL",
    "api_key": "YOUR_API_KEY",
    "core_name": "my_index",
    "start": 0,
    "rows": 0,
    "sort": "date desc",
    "wt": "json",
    "facet": "true",
    "facet.field[]": ["ip", "path", "http_status"],
    "fq[]": "date:[NOW-1DAY TO NOW]",
})
data = response.json()
facets = data.get("facet_counts", {}).get("facet_fields", {})
for field, values in facets.items():
    print(f"\n--- {field} ---")
    for i in range(0, len(values), 2):
        print(f"  {values[i]}: {values[i+1]}")

Related Documentation

Need help analyzing your Solr request logs? We are here to help.

Contact Support