Skip to content

Commit 9639c53

Browse files
shortened longest description
1 parent f89aa1f commit 9639c53

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

samples/manage/sql-assessment-api/DefaultRuleset.csv

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ HypotheticalStatistics,Warning,Hypothetical statistics found,Statistics @{StatNa
118118
LatestCU,Warning,SQL Server instance is not up to date,Product version @{ProductVersion} is not the latest available. We recommend keeping your SQL Server up to date and install Service Packs and Cumulative Updates as they are released.,"['DefaultRuleset', 'Security', 'UpdateIssues']","On an installed instance of SQL Server, we recommend that you apply the latest security updates and critical updates including general distribution releases (GDRs), service packs (SPs), and cumulative updates (CUs).","https://support.microsoft.com/help/321185/how-to-determine-the-version-edition-and-update-level-of-sql-server-an, https://docs.microsoft.com/sql/database-engine/install-windows/install-sql-server-servicing-updates",['SQLServerVersion'],Server,/^(Windows|Linux)$/,OnPremises,"[11.0,)",,
119119
FKNoIndexes,Warning,Foreign key constraints should have corresponding indexes,Create a corresponding index for each foreign key. There is no index on the following foreign keys: @{ConstraintName}.,"['DefaultRuleset', 'Performance', 'Indexes']","Unlike primary key constraints, creating a foreign key constraint does not automatically create a corresponding index. However, manually creating an index on a foreign key is often useful.",https://docs.microsoft.com/sql/relational-databases/tables/primary-and-foreign-key-constraints,['FKNoIndexes'],Database,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",/^(master|model|msdb|tempdb)$/,
120120
MissedIndexes,Information,Potentially missing indexes,Create an index on @{Table} with key columns @{KeyCols}@{IncludedCols: and included columns: #},"['DefaultRuleset', 'Performance', 'Indexes']",Potentially missing indexes were found based on query history. It may be important to revise them.,https://docs.microsoft.com/sql/relational-databases/sql-server-index-design-guide,['MissedIndexes'],Database,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",/^(master|model|msdb|tempdb)$/,
121-
FullBackup,Warning,Full backup is missed or outdated,The last full backup had been created more than @{threshold} days ago. Create a new full backup.,"['DefaultRuleset', 'Backup']",Database doesn't have any full backup or the latest full backup is over 7 days.,https://docs.microsoft.com/sql/relational-databases/backup-restore/create-a-full-database-backup-sql-server,['DatabaseBackups'],Database,/^(Windows|Linux)$/,OnPremises,"[11.0,)",/^(model|tempdb)$/,7.0
121+
FullBackup,Warning,Full backup is missed or outdated,The last full backup had been created more than @{threshold} days ago. Create a new full backup.,"['DefaultRuleset', 'Backup']",Database doesn't have any full backup or the latest full backup is over 7 days.,https://docs.microsoft.com/sql/relational-databases/backup-restore/create-a-full-database-backup-sql-server,['DatabaseBackups'],Database,/^(Windows|Linux)$/,OnPremises,"[11.0,)",/^(model|tempdb)$/,7
122122
OutdatedTranLogBackup,Warning,Transaction Log backup is missed or outdated,Create a backup of Transaction Log. Database recovery model: @{recovery_model_desc},"['DefaultRuleset', 'Backup']","Database does not have any transaction Log backup since the latest full or differential backup, or it's older than 24H.",https://docs.microsoft.com/sql/relational-databases/backup-restore/back-up-a-transaction-log-sql-server,['DatabaseBackups'],Database,/^(Windows|Linux)$/,OnPremises,"[11.0,)",/^(master|model|msdb|tempdb)$/,
123123
DbDiffCollation,Warning,Database collation doesn't match the collation of master,Keep database collation the same as the collation for master or model,"['DefaultRuleset', 'DBConfiguration', 'Collation']","We recommend that the collations of user-defined databases match the collation of master or model. Otherwise, collation conflicts can occur that might prevent code from executing. For example, when a stored procedure joins one table to a temporary table, SQL Server might end the batch and return a collation conflict error if the collations of the user-defined database and the model database are different. This occurs because temporary tables are created in tempdb, which bases its collation on that of model.",https://docs.microsoft.com/sql/database-engine/set-collation-user-defined-databases-match-master-model-databases,['DatabaseConfiguration'],Database,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",,
124124
AutoClose,Warning,Auto Close Option should be OFF,Set AUTO_CLOSE option to OFF,"['DefaultRuleset', 'Performance', 'DBConfiguration']","When AUTO_CLOSE is set ON, this can cause performance degradation on frequently accessed databases because of the increased overhead of opening and closing the database after each connection. AUTO_CLOSE also flushes the procedure cache after each connection.",https://docs.microsoft.com/sql/relational-databases/policy-based-management/set-the-auto-close-database-option-to-off,['DatabaseConfiguration'],Database,/^(Windows|Linux)$/,OnPremises,"[11.0,)",/^(master|msdb|tempdb)$/,
@@ -139,7 +139,7 @@ FilesAutogrowth,Warning,Database files have Autogrowth setting over 1GB,Set File
139139
DuplicateIndexes,Warning,There are tables with duplicate indexes,Consider removing duplicate indexes in table @{Table}: @{ToDelete},"['DefaultRuleset', 'Performance', 'Indexes']",There are tables with duplicate indexes according to their definitions. We recommended to revise all these objects as soon as possible.,https://docs.microsoft.com/sql/relational-databases/sql-server-index-design-guide,"[{'id': 'IndexesDefinitions', 'transform': {'type': 'duplicateIndexes'}}]",Database,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",/^(master|model|msdb|tempdb)$/,
140140
RedundantIndexes,Warning,There are tables with possibly redundant indexes,Consider removing redundant indexes in table @{Table}: @{Indexes},"['DefaultRuleset', 'Performance', 'Indexes']",There are tables with possibly redundant indexes according to the set of key and included columns. We recommended to revise all these objects as soon as possible.,https://docs.microsoft.com/sql/relational-databases/sql-server-index-design-guide,"[{'id': 'IndexesDefinitions', 'transform': {'type': 'redundantIndexes'}}]",Database,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",/^(master|model|msdb|tempdb)$/,
141141
UserObjectsInMaster,Warning,User objects in database master,Remove user objects from database master: @{Object_Name},"['DefaultRuleset', 'masterDB', 'Backup']","We highly recommend you not create user objects in the master database. If it's unavoidable for some reason, make sure to back up the database more frequently.",https://docs.microsoft.com/sql/relational-databases/databases/master-database,['UserObjectsCountInMasterDB'],Database,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",,
142-
HighCPUUsage,Warning,High CPU usage on server,"Investigate high CPU utilization on server hosting this instance. Last 2 hours: total CPU usage is ~@{AVGTotalCPUUsage}%, usage by SQL Server is ~@{AVGSQLCPUUsage}%","['DefaultRuleset', 'Performance', 'CPU']","Keeping CPU usage rates within normal ranges is vital for servers hosting SQL Server instances. A continually high rate of CPU usage may indicate the need to upgrade the CPU or add multiple processors. Alternatively, a high CPU usage rate may indicate a poorly tuned or designed application. Optimizing the application can lower CPU utilization.",https://docs.microsoft.com/sql/relational-databases/performance-monitor/monitor-cpu-usage,['CpuUsage'],Server,Windows,"OnPremises, ManagedInstance","[11.0,)",,70.0
142+
HighCPUUsage,Warning,High CPU usage on server,"Investigate high CPU utilization on server hosting this instance. Last 2 hours: total CPU usage is ~@{AVGTotalCPUUsage}%, usage by SQL Server is ~@{AVGSQLCPUUsage}%","['DefaultRuleset', 'Performance', 'CPU']","Keeping CPU usage rates within normal ranges is vital for servers hosting SQL Server instances. A continually high rate of CPU usage may indicate the need to upgrade the CPU or add multiple processors. Alternatively, a high CPU usage rate may indicate a poorly tuned or designed application. Optimizing the application can lower CPU utilization.",https://docs.microsoft.com/sql/relational-databases/performance-monitor/monitor-cpu-usage,['CpuUsage'],Server,Windows,"OnPremises, ManagedInstance","[11.0,)",,70
143143
ReplErrors24H,Warning,Replication errors in the last 24 hours,Review replication errors for the following publications: @{publication},"['DefaultRuleset', 'Replication']",This check searches for errors in distribution database agent's history table for the last 24 hours.,https://docs.microsoft.com/sql/relational-databases/replication/sql-server-replication,['ReplicationErrors'],Server,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",,
144144
AgentAlertsSeverity10,Warning,Agent doesn't rise alerts for errors with severity 10,Consider creating alerts for the following errors: @{error_ids},"['DefaultRuleset', 'Agent']","Events are generated by SQL Server and entered into the Microsoft Windows application log. SQL Server Agent reads the application log and compares events written there to alerts that you have defined. When SQL Server Agent finds a match, it fires an alert, which is an automated response to an event. In addition to monitoring SQL Server events, SQL Server Agent can also monitor performance conditions and Windows Management Instrumentation (WMI) events.",https://docs.microsoft.com/sql/ssms/agent/alerts,['SysAlerts'],Server,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",,
145145
AgentAlertsSeverity16,Warning,Agent doesn't rise alerts for errors with severity 16,Consider creating alerts for the following errors: @{error_ids},"['DefaultRuleset', 'Agent']","Events are generated by SQL Server and entered into the Microsoft Windows application log. SQL Server Agent reads the application log and compares events written there to alerts that you have defined. When SQL Server Agent finds a match, it fires an alert, which is an automated response to an event. In addition to monitoring SQL Server events, SQL Server Agent can also monitor performance conditions and Windows Management Instrumentation (WMI) events.",https://docs.microsoft.com/sql/ssms/agent/alerts,['SysAlerts'],Server,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",,
@@ -155,14 +155,14 @@ VLFCount,Warning,VLF count,Update transaction log settings to reduce the number
155155
156156
If the log files grow to a large size in many small increments, they will have many virtual log files. This can slow down database startup and also log backup and restore operations. Conversely, if the log files are set to a large size with few or just one increment, they will have few very large virtual log files.
157157
158-
We recommend that you assign log files a size value close to the final size required, using the required increments to achieve optimal VLF distribution, and also have a relatively large growth_increment value.",https://docs.microsoft.com/sql/relational-databases/sql-server-transaction-log-architecture-and-management-guide,"[{'id': 'VLF', 'transform': {'type': 'aggregate', 'map': {'RecoveryUnitId': {'type': 'count', 'distinct': False}}}}]",Database,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",,50.0
158+
We recommend that you assign log files a size value close to the final size required, using the required increments to achieve optimal VLF distribution, and also have a relatively large growth_increment value.",https://docs.microsoft.com/sql/relational-databases/sql-server-transaction-log-architecture-and-management-guide,"[{'id': 'VLF', 'transform': {'type': 'aggregate', 'map': {'RecoveryUnitId': {'type': 'count', 'distinct': False}}}}]",Database,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",,50
159159
TF8015,Warning,TF 8015 disables auto-detection and NUMA setup,Disable trace flag 8015 for this SQL Server instance. This TF does not apply to this SQL Server version,"['DefaultRuleset', 'TraceFlag', 'CPU', 'NUMA']","SQL Server allows you to group CPUs into nodes referred to as soft-NUMA. You usually configure soft-NUMA when you have many CPUs and do not have hardware NUMA, but you can also use soft-NUMA to subdivide hardware NUMA nodes into smaller groups.",https://techcommunity.microsoft.com/t5/SQL-Server-Support/How-It-Works-Soft-NUMA-I-O-Completion-Thread-Lazy-Writer-Workers/ba-p/316044,['EnabledGlobalTraceFlags'],Server,Windows,OnPremises,"[11.0,11.0.3349)",,
160160
TF8032,Warning,TF 8032 reverts the cache limit parameters to the SQL Server 2005 RTM,The cache limit parameters reverted to the SQL Server 2005 RTM setting but can cause poor performance if large caches make less memory available for other memory consumers like BP,"['DefaultRuleset', 'TraceFlag', 'Performance']",Trace Flag 8032 reverts the cache limit parameters to the SQL Server 2005 RTM setting but can cause poor performance if large caches make less memory available for other memory consumers like BP.,,['EnabledGlobalTraceFlags'],Server,Windows,OnPremises,"[11.0,)",,
161161
TF8744,Warning,TF 8744 disables pre-fetching for the Nested Loop operator,Disable trace flag 8744 for this SQL Server instance. This TF does not apply to this SQL Server version,"['DefaultRuleset', 'TraceFlag', 'Performance']",Trace flag 8744 disables pre-fetching for the Nested Loops operator. Incorrect use of this trace flag may cause additional physical reads when SQL Server executes plans that contain the Nested Loops operator.,https://support.microsoft.com/help/920093/tuning-options-for-sql-server-when-running-in-high-performance-workloa,['EnabledGlobalTraceFlags'],Server,Windows,OnPremises,"[11.0,12.0)",,
162162
TF9347,Warning,TF 9347 disables batch mode for sort operator,Disable trace flag 9347 for this SQL Server instance. This TF does not apply to this SQL Server version,"['DefaultRuleset', 'TraceFlag', 'Performance']",Trace flag 9347 disables batch mode for sort operator. SQL Server 2016 (13.x) introduced a new batch mode sort operator that boosts performance for many analytical queries.,,['EnabledGlobalTraceFlags'],Server,Windows,OnPremises,"[11.0,13.0)",,
163163
TF9349,Warning,TF 9349 disables batch mode for top N sort operator,Disable trace flag 9349 for this SQL Server instance. This TF does not apply to this SQL Server version,"['DefaultRuleset', 'TraceFlag', 'Performance']",Trace flag 9349 disables batch mode for top N sort operator. SQL Server 2016 (13.x) introduced a new batch mode top sort operator that boosts performance for many analytical queries.,,['EnabledGlobalTraceFlags'],Server,Windows,OnPremises,"[11.0,13.0)",,
164164
TF9389,Warning,TF 9389 enables dynamic memory grant for batch mode operators,Disable trace flag 9389 for this SQL Server instance. The TF does not apply to this SQL Server version,"['DefaultRuleset', 'TraceFlag', 'Performance', 'TempDB']","Trace flag 9389 enables additional dynamic memory grant for batch mode operators. If a query does not get all the memory it needs, it spills data to TempDB, incurring additional I/O and potentially impacting query performance. If the dynamic memory grant trace flag is enabled, a batch mode operator may ask for additional memory and avoid spilling to TempDB if additional memory is available.",,['EnabledGlobalTraceFlags'],Server,Windows,"OnPremises, ManagedInstance","[11.0,13.0)",,
165-
TF9476,Warning,TF 9476 causes SQL Server to generate a plan using the Simple Containment instead of the default Base Containment under New CE,Disable trace flag 9476 for this SQL Server instance. The TF does not apply to this SQL Server version,"['DefaultRuleset', 'TraceFlag', 'Performance', 'QueryOptimizer']","Trace flag 9476 causes SQL Server to generate a plan using the Simple Containment assumption instead of the default Base Containment assumption, under the query optimizer cardinality estimation model of SQL Server 2014 (12.x) through SQL Server 2017 versions.",,['EnabledGlobalTraceFlags'],Server,Windows,OnPremises,"[11.0,13.0)",,
165+
TF9476,Warning,TF 9476 causes SQL Server to generate a plan using the Simple Containment,Disable trace flag 9476 for this SQL Server instance. The TF does not apply to this SQL Server version,"['DefaultRuleset', 'TraceFlag', 'Performance', 'QueryOptimizer']","Trace flag 9476 causes SQL Server to generate a plan using the Simple Containment assumption instead of the default Base Containment assumption, under the query optimizer cardinality estimation model of SQL Server 2014 (12.x) through SQL Server 2017 versions.",,['EnabledGlobalTraceFlags'],Server,Windows,OnPremises,"[11.0,13.0)",,
166166
TF9481,Warning,"TF 9481 enables Legacy CE model, irrespective of the compatibility level of the database",Disable trace flag 9481 for this SQL Server instance. The TF does not apply to this SQL Server version,"['DefaultRuleset', 'TraceFlag', 'QueryOptimizer', 'Performance']","Trace flag 9481 enables you to set the query optimizer cardinality estimation model to the SQL Server 2012 (11.x) and earlier versions, irrespective of the compatibility level of the database.",,['EnabledGlobalTraceFlags'],Server,Windows,OnPremises,"[11.0,12.0)",,
167167
TF10204,Warning,TF 10204 disables merge/recompress during columnstore index reorganization,Disable trace flag 10204 for this SQL Server instance. The TF does not apply to this SQL Server version,"['DefaultRuleset', 'TraceFlag', 'Performance', 'ColumnStore']","Trace flag 10204 disables merge/recompress during columnstore index reorganization. In SQL Server 2016 (13.x), when a columnstore index is reorganized, there is new functionality to automatically merge any small compressed rowgroups into larger compressed rowgroups, as well as recompressing any rowgroups that have a large number of deleted rows.",,['EnabledGlobalTraceFlags'],Server,Windows,OnPremises,"[11.0,13.0)",,
168168
SPNaming,Warning,Stored Procedure Naming,Rename the following stored procedures to get rid of the sp_ prefix: @{ObjectName},"['DefaultRuleset', 'Naming']","In SQL Server, the sp_ prefix designates system stored procedures. If you use that prefix for your stored procedures, the name of your procedure might conflict with the name of a system stored procedure that will be created in the future. If such a conflict occurs, your application might break if your application refers to the procedure without qualifying the reference by schema. In this situation, the name will bind to the system procedure instead of to your procedure.",https://docs.microsoft.com/previous-versions/visualstudio/visual-studio-2010/dd172115(v=vs.100),['BadNamingSP'],Database,/^(Windows|Linux)$/,"OnPremises, ManagedInstance","[11.0,)",,

0 commit comments

Comments
 (0)