dsetool perf

Temporarily changes the running parameters for the CQL Performance Service.

dse.yaml

The location of the dse.yaml file depends on the type of installation:

Package installations
Installer-Services installations

/etc/dse/dse.yaml

Tarball installations
Installer-No Services installations

installation_location/resources/dse/conf/dse.yaml

Temporarily changes the running parameters for the CQL Performance Service. Histogram tables provide DSE statistics that can be queried with CQL.

Changes made with performance object subcommands do not persist between restarts and are useful only for short-term diagnostics.
Note: To make these changes permanent, change the CQL Performance Service options in dse.yaml.

See DSE Performance Service diagnostic table reference and Collecting histogram diagnostics.

Synopsis

dsetool perf subcommand values
Table 1. Legend
Syntax conventions Description
UPPERCASE Literal keyword.
Lowercase Not literal.
Italics Variable value. Replace with a valid option or user-defined value.
[ ] Optional. Square brackets ( [ ] ) surround optional command arguments. Do not type the square brackets.
( ) Group. Parentheses ( ( ) ) identify a group to choose from. Do not type the parentheses.
| Or. A vertical bar ( | ) separates alternative elements. Type any one of the elements. Do not type the vertical bar.
... Repeatable. An ellipsis ( ... ) indicates that you can repeat the syntax element as often as required.
'Literal string' Single quotation ( ' ) marks must surround literal strings in CQL statements. Use single quotation marks to preserve upper case.
{ key:value } Map collection. Braces ( { } ) enclose map collections or key value pairs. A colon separates the key and the value.
<datatype1,datatype2> Set, list, map, or tuple. Angle brackets ( < > ) enclose data types in a set, list, map, or tuple. Separate the data types with a comma.
cql_statement; End CQL statement. A semicolon ( ; ) terminates all CQL statements.
[ -- ] Separate the command line options from the command arguments with two hyphens ( -- ). This syntax is useful when arguments might be mistaken for command line options.
' <schema> ... </schema> ' Search CQL only: Single quotation marks ( ' ) surround an entire XML schema declaration.
@xml_entity='xml_entity_type' Search CQL only: Identify the entity and literal value to overwrite the XML element in the schema and solrconfig files.
clustersummary enable|disable
Whether to enable the collection of database-level statistics for the cluster.
cqlslowlog enable|disable
Whether to enable the collection of CQL queries that exceed the specified time threshold.
cqlslowlog threshold
The CQL slow log threshold as a percentile of the actual request times:
  • [0,1] is a percentile threshold
  • >1 is an absolute threshold in milliseconds
  • 1.0 logs no queries
  • 99.9 logs 0.1% of the slowest queries
  • 95.0 logs 5% of the slowest queries
  • 50.0 logs 50% of the slowest queries
  • 0.0 logs all queries
cqlslowlog skip_writing_to_db
Keeps slow queries in-memory only.
cqlslowlog write_to_db
Writes data to the database. When data writes to the database, the threshold must be >= 2000 ms to prevent a high load on database.

Temporary equivalent of cql_slow_log_options.skip_writing_to_db: false setting in dse.yaml.

cqlslowlog set_num_slowest_queries
The number of slow queries to keep in-memory.
cqlslowlog recent_slowest_queries
The specified number of the most recent slow queries to retrieve.
cqlsysteminfo enable|disable
Whether to collect CQL system performance information statistics.
dbsummary enable|disable
Whether to collect database summary statistics.
histograms enable|disable
Whether to collect table histograms that measure the distribution of values in a stream of data. Histogram tables provide DSE statistics that can be queried with CQL. The data in the diagnostic histogram tables is cumulative since the DSE server was started.
resourcelatencytracking enable|disable
Whether to collect resource latency tracking statistics.
solrcachestats enable|disable
Whether to collect Solr cache statistics.
solrindexingerrorlog enable|disable
Whether to log Solr indexing errors.
solrindexstats enable|disable
Whether to collect Solr indexing statistics.
solrlatencysnapshots enable|disable
Whether to collect Solr latency snapshots.
solrrequesthandlerstats enable|disable
Whether to collect Solr request handler statistics.
solrslowlog threshold enable|disable
Whether to log the Solr slow sub-query log and set the Solr slow log threshold in milliseconds.
solrupdatehandlerstats enable|disable
Whether to collect Solr update handler statistics.
userlatencytracking enable|disable
Whether to enable user latency tracking.

Examples

These example commands make temporarily changes only. Changes made with performance object subcommands do not persist between restarts and are useful only for short-term diagnostics.

See Collecting database summary diagnostics.

To enable the collection of database-level statistics data:

dsetool perf clustersummary enable

To disable the collection of database-level statistics data:

dsetool perf clustersummary disable

See Collecting slow queries.

To keep slow queries in-memory only:

dsetool perf cqlslowlog skip_writing_to_db

To set the number of slow queries to keep in-memory:

dsetool perf cqlslowlog set_num_slowest_queries 5

To write slow queries to the database:

dsetool perf cqlslowlog write_to_db

To disable collecting information on slow queries:

dsetool perf cqlslowlog disable

To change the threshold to collect information on 5% of the slowest queries:

dsetool perf cqlslowlog 95.0

To enable collecting information to identify slow search queries:

dsetool perf solrslowlog enable

To change the threshold value (in milliseconds) at which a sub-query is slow enough to be reported:

dsetool perf solrslowlog 200