SQL Long Running Queries Test

This test reports the time taken by each database for executing queries, and also reveals which query is taking too long to execute. This way, resource-intensive queries to a database can be quickly isolated.

One set of results for each database on the Microsoft SQL server monitored

Target of the test : A Microsoft SQL server

Agent deploying the test : An internal agent

Outputs of the test : One set of results for each database on the Microsoft SQL server monitored

Note:

This test will execute only on Microsoft SQL Server 2005 (or above).

  1. TEST PERIOD - How often should the test be executed
  2. Host – The IP address of the Microsoft SQL server.
  3. Port - The port number through which the Microsoft SQL server communicates. The default port is 1433.
  4. ssl – If the Microsoft SQL server being monitored is an SSL-enabled server, then set the ssl flag to Yes. If not, then set the ssl flag to No.
  5. instance - In this text box, enter the name of a specific Microsoft SQL instance that is to be monitored. The default value of this parameter is “default”. To monitor an Microsoft SQL instance named “CFS”, enter this as the value of the INSTANCE parameter.
  6. USER –If a Microsoft SQL Server 7.0/2000 is monitored, then provide the name of a SQL user with the Sysadmin role in this text box. While monitoring a Microsoft SQL Server 2005 or above, provide the name of a SQL user with all of the privileges outlined in User Privileges Required for Monitoring Microsoft SQL server.

  7. password - The password of the specified user
  8. confirm password - Confirm the password by retyping it.
  9. domain - By default, none is displayed in the DOMAIN text box. If the ‘SQL server and Windows’ authentication has been enabled for the server being monitored, then the DOMAIN can continue to be none. On the other hand, if ‘Windows only’ authentication has been enabled, then, in the DOMAIN text box, specify the Windows domain in which the managed Microsoft SQL server exists. Also, in such a case, the USER name and PASSWORD that you provide should be that of a user authorized to access the monitored SQL server.
  10. exclude info -  By default, this is set to none, indicating that the test will monitor all the databases on the Microsoft SQL server by default. To exclude specific databases from the monitoring scope of this test, provide a comma-separated list of databases in the EXCLUDE INFO text box. You can append more databases to this list to exclude more databases, or can remove one/more databases from the list to include them in the monitoring purview.
  11. top n query - By default, the number ‘10’ is displayed in the TOP N QUERY text box. This implies that, by default, the detailed diagnosis of this test will display the top-10 queries to the database, in terms of resource usage. If you want the detailed diagnosis to display more or less number of top queries, set the TOP N QUERY parameter to a number of your choice.
  12. isntlmv2 - In some Windows networks, NTLM (NT LAN Manager) may be enabled. NTLM is a suite of Microsoft security protocols that provides authentication, integrity, and confidentiality to users. NTLM version 2 (“NTLMv2”) was concocted to address the security issues present in NTLM. By default, the isntlmv2 flag is set to No, indicating that NTLMv2 is not enabled by default on the target Microsoft SQL host. Set this flag to Yes if NTLMv2 is enabled on the target host.
  13. ISPASSIVE – If the value chosen is yes, then the Microsoft SQL server under consideration is a passive server in a SQL cluster. No alerts will be generated if the server is not running. Measures will be reported as “Not applicable" by the agent if the server is not up.
  14. avg elapsed per exec - By default, to compute the Avg elapsed time and Max elapsed time of queries, this test considers the execution time of only those queries that have been running for over 10 seconds. Also, by default, the detailed diagnosis of this test will provide the details of only those queries that have been running for over 10 seconds. This is why, the avg elapsed per exec parameter is set to 10, by default. You can change this default setting, if required.
  15. DETAILED DIAGNOSIS – To make diagnosis more efficient and accurate, the eG Enterprise suite embeds an optional detailed diagnostic capability. With this capability, the eG agents can be configured to run detailed, more elaborate tests as and when specific problems are detected. To enable the detailed diagnosis capability of this test for a particular server, choose the On option. To disable the capability, click on the Off option.

    The option to selectively enable/disable the detailed diagnosis capability will be available only if the following conditions are fulfilled:

    • The eG manager license should allow the detailed diagnosis capability
    • Both the normal and abnormal frequencies configured for the detailed diagnosis measures should not be 0.
Measurement made by the test
Measurement Description Measurement Unit Interpretation

Avg elapsed time:

Indicates the average time taken by queries to execute on this database.

Secs

If the value of this measure is very high, it could either indicate that the database is unable to process the queries quickly or that one/more queries to the database are taking too long to execute. Improper indexing and fragmented tables in the database are common causes for slowdowns at the database-level. Besides the above, queries that are improperly structured can also take time to execute. The longer a query executes on the database, higher would be the resource consumption of that query. It is therefore imperative that such resource-intensive queries are quickly isolated and fine-tuned, so as to prevent degradations in the performance of the database server.

Using the detailed diagnosis of this measure, you can rapidly identify the resource-intensive queries to the database.

Max elapsed time:

Indicates the maximum time taken by the queries to this database.

Secs