Collecting slow search queries
The solr_slow_sub_query_log_options performance object reports distributed sub-queries (query executions on individual shards) that take longer than a specified period of time.
Permanently collect slow query data
-
Edit the
dse.yamlfile.The location of the
dse.yamlfile depends on the type of installation:-
Package installations and Installer-Services installations:
/etc/dse/dse.yaml -
Tarball installations and Installer-No Services installations:
<installation_location>/resources/dse/conf/dse.yaml
-
-
To permanently enable collection of data on slow search queries, edit the
dse.yamlfile and uncomment thesolr_slow_sub_query_log_optionsparameters, and define values for the CQL slow log settings:solr_slow_sub_query_log_options: enabled: true ttl_seconds: 604800 async_writers: 1 threshold_ms: 100The default parameter values minimize resource usage.
Default parameter values options Options Determines enabled
Whether the object is enabled at start up.
ttl_secondsHow many seconds a record survives before it is expired from the performance object.
async_writersFor event-driven objects, such as the slow log, determines the number of possible concurrent slow query recordings. Objects like
solr_result_cache_statsare updated in the background.threshold_msFor the slow log, the level (in milliseconds) at which a sub-query slow enough to be reported.
Temporarily change slow query configuration
To temporarily change the running parameters for collecting information on slow Solr queries:
dsetool perf solrslowlog enable
To temporarily disable collecting information:
dsetool perf solrslowlog disable
To temporarily change the threshold value in milliseconds:
dsetool perf solrslowlog 200
Export slow query data
You can export slow search queries using the CQL copy command:
COPY solr_slow_sub_query_log ( date, commands, duration ) TO 'slow_solr_queries.csv' WITH HEADER = true;