Logs & Analytics API
Solr Traffic Monitoring API
Analyze your Solr request traffic programmatically. Get request logs as JSON or CSV, filter by date ranges, facet by IP, path, query terms, and HTTP status codes.
Endpoint
GET https://opensolr.com/solr_manager/api/request_log
This is the same endpoint as the Request Log API, but this page focuses on practical traffic monitoring examples using facets, date filters, and aggregation. Also see the Real-Time Monitoring UI in your control panel.
Parameters
| Parameter | Status | Description |
|---|---|---|
email | Required | Your Opensolr registration email address |
api_key | Required | Your Opensolr API key |
core_name | Required | The name of the index you want traffic data for |
start | Optional | Pagination offset (default: 0) |
rows | Optional | Number of results per page (default: 10) |
sort | Optional | Sort field and direction (e.g., date desc) |
fq[] | Optional | Filter queries. Use multiple fq[] params for AND conditions |
wt | Optional | Response format: json (default) or csv |
facet | Optional | Enable faceting: true |
facet.field[] | Optional | Fields to facet on (e.g., ip, path, q, http_status) |
Traffic Monitoring Examples
Last 200 requests from the past 24 hours (JSON)
curl -gs "https://opensolr.com/solr_manager/api/request_log?email=YOUR_EMAIL&api_key=YOUR_API_KEY&core_name=YOUR_INDEX&start=0&sort=date%20desc&rows=200&fq[]=date:[NOW-1DAY%20TO%20NOW]&wt=json"
IP and Path facets for the last month
curl -gs "https://opensolr.com/solr_manager/api/request_log?email=YOUR_EMAIL&api_key=YOUR_API_KEY&core_name=YOUR_INDEX&start=0&sort=date%20desc&rows=0&fq[]=date:[NOW-1MONTH%20TO%20NOW]&wt=json&facet=true&facet.field[]=path&facet.field[]=ip"
Popular search queries today
curl -gs "https://opensolr.com/solr_manager/api/request_log?email=YOUR_EMAIL&api_key=YOUR_API_KEY&core_name=YOUR_INDEX&start=0&sort=date%20desc&rows=0&fq[]=date:[NOW-1DAY%20TO%20NOW]&wt=json&facet=true&facet.field[]=q"
HTTP status code breakdown for today
curl -gs "https://opensolr.com/solr_manager/api/request_log?email=YOUR_EMAIL&api_key=YOUR_API_KEY&core_name=YOUR_INDEX&start=0&sort=date%20desc&rows=0&fq[]=date:[NOW-1DAY%20TO%20NOW]&wt=json&facet=true&facet.field[]=http_status"
Failed requests (4xx errors) today — 20 per page
curl -gs "https://opensolr.com/solr_manager/api/request_log?email=YOUR_EMAIL&api_key=YOUR_API_KEY&core_name=YOUR_INDEX&start=0&sort=date%20desc&rows=20&fq[]=date:[NOW-1DAY%20TO%20NOW]&fq[]=+http_status:4*&wt=json"
Export all requests as CSV
curl -gs "https://opensolr.com/solr_manager/api/request_log?email=YOUR_EMAIL&api_key=YOUR_API_KEY&core_name=YOUR_INDEX&start=0&sort=date%20desc&rows=200000&wt=csv"
PHP — Get popular queries today
$params = http_build_query([ 'email' => 'YOUR_EMAIL', 'api_key' => 'YOUR_API_KEY', 'core_name' => 'YOUR_INDEX', 'start' => 0, 'rows' => 0, 'sort' => 'date desc', 'wt' => 'json', 'facet' => 'true', ]); // Add array params manually (fq[], facet.field[]) $url = "https://opensolr.com/solr_manager/api/request_log?{$params}" . "&fq[]=" . urlencode("date:[NOW-1DAY TO NOW]") . "&facet.field[]=q"; $response = file_get_contents($url); $data = json_decode($response, true); print_r($data['facet_counts']['facet_fields']['q'] ?? []);
Python — Get failed requests today
import requests response = requests.get("https://opensolr.com/solr_manager/api/request_log", params={ "email": "YOUR_EMAIL", "api_key": "YOUR_API_KEY", "core_name": "YOUR_INDEX", "start": 0, "rows": 20, "sort": "date desc", "wt": "json", "fq[]": ["date:[NOW-1DAY TO NOW]", "+http_status:4*"], }) data = response.json() for doc in data.get("response", {}).get("docs", []): print(f"{doc['date']} | {doc['http_status']} | {doc.get('q', '')}")
Related Documentation
Traffic Monitoring APIAdvanced traffic analysis with facets, date ranges, and CSV export.
Get Error LogRetrieve recent Solr errors and warnings for your index.
Get Request LogQuery your full request log with Solr-style parameters.
Monitoring UIReal-time monitoring dashboard in your Opensolr control panel.
Need help analyzing your Solr traffic? We are here to help.
Contact Support