SQL Server integration metrics

The official Datadog integration for monitoring SQL Server. It collects 162 metrics.

Official summary

Collect important SQL Server performance and health metrics.

Metric types

  • gauge (value at a point in time): 125
  • count (occurrences in the interval): 37

Metrics

Descriptions are the official definitions, unedited.

MetricTypeUnit
sqlserver.access.full_scansNumber of unrestricted full scans per second. These can be either base-table or full-index scans. (Perf. Counter: Access Methods - Full Scans/sec)gaugeoperation/second
sqlserver.access.index_searchesNumber of index searches per second. These are used to start a range scan, reposition a range scan, revalidate a scan point, fetch a single index record, and search down the index to locate where to insert a new row. (Perf. Counter: Access Methods - Index Searches/sec)gaugeoperation/second
sqlserver.access.page_splitsThe number of page splits per second. (Perf. Counter: Access Methods - Page Splits/sec)gaugeoperation/second
sqlserver.access.probe_scansNumber of probe scans per second that are used to find at most one single qualified row in an index or base table directly. (Perf. Counter: Access Methods - Probe Scans/sec)gaugeoperation/second
sqlserver.access.range_scansNumber of qualified range scans through indexes per second. (Perf. Counter: Access Methods - Range Scans/sec)gaugeoperation/second
sqlserver.agent.active_jobs.durationDuration of currently running jobs on sqlserver agent (DBM Only). Tags: job_name, job_idgaugesecond
sqlserver.agent.active_jobs.step_infoPresence of a most recent completed step for active jobs running on the sqlserver agent (DBM Only). Tags: job_name, job_id, step_name, step_id, step_run_statusgauge-
sqlserver.agent.completed_jobs.durationDuration of completed jobs on sqlserver agent (DBM Only). Tags: job_name, job_id, run_status, sourcegaugesecond
sqlserver.agent.completed_jobs.executionsNumber of executions of completed jobs on sqlserver agent (DBM Only). Tags: job_name, job_id, run_status, sourcegaugeexecution
sqlserver.ao.ag_sync_healthAvailability group synchronization health: 0 = Not healthy, 1 = Partially healthy, 2 = Healthy. Tags: availability_group, availability_group_name, synchronization_health_descgauge-
sqlserver.ao.filestream_send_rateThe rate at which the FILESTREAM files are shipped to the secondary replica. Tags: availability_group, availability_group_name, replica_server_name, failover_mode, availability_mode, db, replica_id, database_id, database_state, synchronization_state, failover_cluster, replica_rolegaugebyte/second
sqlserver.ao.is_primary_replicaDenotes if a replica is a primary(1) or secondary(0). Tags: availability_group, availability_group_name, replica_server_name, failover_mode, availability_mode, db, replica_id, database_id, database_state, synchronization_state, failover_cluster, replica_rolegauge-
sqlserver.ao.log_send_queue_sizeAmount of log records of the primary database that has not been sent to the secondary databases. Tags: availability_group, availability_group_name, replica_server_name, failover_mode, availability_mode, db, replica_id, database_id, database_state, synchronization_state, failover_cluster, replica_rolegaugebyte
sqlserver.ao.log_send_rateAverage rate at which primary replica instance sent data during last active period. Tags: availability_group, availability_group_name, replica_server_name, failover_mode, availability_mode, db, replica_id, database_id, database_state, synchronization_state, failover_cluster, replica_rolegaugebyte/second
sqlserver.ao.low_water_mark_for_ghostsA monotonically increasing number for the database indicating a low water mark used by ghost cleanup on the primary database. Tags: availability_group, availability_group_name, replica_server_name, failover_mode, availability_mode, db, replica_id, database_id, database_state, synchronization_state, failover_cluster, replica_rolegauge-
sqlserver.ao.member.number_of_quorum_votesNumber of quorum votes possessed by this quorum member. Tags: member_name, member_type, member_state, failover_clustergauge-
sqlserver.ao.member.stateThe state of a member that's a part of the WSFC quorum. Tags: member_name, member_type, member_state, failover_clustergauge-
sqlserver.ao.member.typeThe type of member that's a part of the WSFC quorum. Tags: member_name, member_type, member_state, failover_clustergauge-
sqlserver.ao.primary_replica_healthRecovery health of primary replica: 0 = In progress, 1 = Online. The metric is not emitted if on a secondary replica. Tags: availability_group, availability_group_name, synchronization_health_descgauge-
sqlserver.ao.quorum_stateState of the WSFC quorum. Tags: quorum_type, quorum_state, failover_clustergauge-
sqlserver.ao.quorum_typeType of quorum used by the WSFC cluster. Tags: quorum_type, quorum_state, failover_clustergauge-
sqlserver.ao.redo_queue_sizeAmount of log records in the log files of the secondary replica that has not yet been redone. Tags: availability_group, availability_group_name, replica_server_name, failover_mode, availability_mode, db, replica_id, database_id, database_state, synchronization_state, failover_cluster, replica_rolegaugebyte
sqlserver.ao.redo_rateAverage rate at which the log records are being redone on a given secondary database. Tags: availability_group, availability_group_name, replica_server_name, failover_mode, availability_mode, db, replica_id, database_id, database_state, synchronization_state, failover_cluster, replica_rolegaugebyte/second
sqlserver.ao.replica_failover_modeReplica failover mode: 0 = Automatic failover, 1 = Manual failover. Tags: replica_server_name, availability_group, availability_group_name, failover_mode_descgauge-
sqlserver.ao.replica_failover_readinessReplica failover readiness: 0 = Not ready for failover, 1 = Ready for failover. Tags: replica_server_name, availability_group, availability_group_name, failover_mode_descgauge-
sqlserver.ao.replica_statusDenotes an Availability Group replica's status. Tags: availability_group, availability_group_name, replica_server_name, failover_mode, availability_mode, db, replica_id, database_id, database_state, synchronization_state, failover_cluster, replica_rolegauge-
sqlserver.ao.replica_sync_stateReplica synchronization health: 0 = Not healthy, 1 = Partially healthy, 2 = Healthy. Tags: availability_group, availability_group_name, replica_server_name, synchronization_state_descgauge-
sqlserver.ao.secondary_lag_secondsThe number of seconds that the secondary replica is behind the primary replica during synchronization. Tags: availability_group, availability_group_name, replica_server_name, failover_mode, availability_mode, db, replica_id, database_id, database_state, synchronization_state, failover_cluster, replica_rolegaugesecond
sqlserver.ao.secondary_replica_healthRecovery health of secondary replica: 0 = In progress, 1 = Online. The metric is not emitted if on a primary replica. Tags: availability_group, availability_group_name, synchronization_health_descgauge-
sqlserver.buffer.cache_hit_ratioThe ratio of data pages found and read from the buffer cache over all data page requests. (Perf. Counter: Buffer Manager - Buffer cache hit ratio)gaugefraction
sqlserver.buffer.checkpoint_pagesThe number of pages flushed to disk per second by a checkpoint or other operation that require all dirty pages to be flushed. (Perf. Counter: Buffer Manager - Checkpoint pages/sec)gaugepage/second
sqlserver.buffer.page_life_expectancyDuration that a page resides in the buffer pool. (Perf. Counter: Buffer Manager - Page life expectancy)gaugesecond
sqlserver.buffer.page_readsIndicates the number of physical database page reads that are issued per second. This statistic displays the total number of physical page reads across all databases. (Perf. Counter: Buffer Manager - Page reads/sec)gaugepage
sqlserver.buffer.page_writesIndicates the number of physical database page writes that are issued per second. (Perf. Counter: Buffer Manager - Page writes/sec)gaugepage
sqlserver.cache.object_countsNumber of cache objects in the cache. (Perf. Counter: Plan Cache - Cache Object Counts)gaugeobject
sqlserver.cache.pagesNumber of 8-kilobyte (KB) pages used by cache objects. (Perf. Counter: Plan Cache - Cache Pages)gaugeobject
sqlserver.database.active_transactionsNumber of active transactions across all databases on the SQL Server instance. Tags: db. (Perf. Counter: Databases - Active Transactions).gaugetransaction
sqlserver.database.avg_fragment_size_in_pagesThe average number of pages in one fragment on the leaf level of an IN_ROW_DATA allocation unit. Tags: db, object_name, schema, index_id, index_namegauge-
sqlserver.database.avg_fragmentation_in_percentLogical fragmentation for indexes, or extent fragmentation for heaps in the IN_ROW_DATA allocation unit. Tags: db, object_name, schema, index_id, index_namegauge-
sqlserver.database.backup_countThe total count of successful backups made for a database. **Note:** This metric is not emitted on Azure managed databases. Tags: dbgauge-
sqlserver.database.backup_restore_throughputRead/write throughput for backup and restore operations of a database per second. Tags: db. (Perf. Counter: Databases - Backup/Restore Throughput/sec)gauge-
sqlserver.database.files.sizeCurrent size of the database file. Tags: db, file_id, file_type, file_name, file_location, database_files_state_descgaugekibibyte
sqlserver.database.files.space_usedCurrent used space of the database file. Tags: db, file_id, file_type, file_name, file_location, database_files_state_descgaugekibibyte
sqlserver.database.files.stateDatabase file state: 0 = Online, 1 = Restoring, 2 = Recovering, 3 = Recovery_Pending, 4 = Suspect, 5 = Unknown, 6 = Offline, 7 = Defunct. Tags: db, file_id, file_type, file_name, file_location, database_files_state_descgauge-
sqlserver.database.fragment_countThe number of fragments in the leaf level of an IN_ROW_DATA allocation unit. Tags: db, object_name, schema, index_id, index_namegauge-
sqlserver.database.index_page_countTotal number of index or data pages. Tags: db, object_name, schema, index_id, index_namegauge-
sqlserver.database.is_in_standbyWhether or not the database is read-only for restore log. Tags: db, database_state_desc, database_recovery_model_descgauge-
sqlserver.database.is_read_onlyWhether or not the database is marked as READ_ONLY. 0 = READ_WRITE, 1 = READ_ONLY. Tags: db, database_state_desc, database_recovery_model_descgauge-
sqlserver.database.is_sync_with_backupWhether or not the database is marked for replication synchronization with backup. 0 = Not marked for replication sync, 1 = Marked for replication sync. Tags: db, database_state_desc, database_recovery_model_descgauge-
sqlserver.database.log_bytes_flushedTotal number of log bytes flushed. Tags: db. (Perf. Counter: Databases - Log Bytes Flushed/sec)gaugebyte
sqlserver.database.log_flush_waitTotal wait time (in milliseconds) to flush the log. On an Always On secondary database, this value indicates the wait time for log records to be hardened to disk. Tags: db. (Perf. Counter: Databases - Log Flush Wait Time)gaugemillisecond
sqlserver.database.log_flushesNumber of log flushes per second. Tags: db. (Perf. Counter: Databases - Log Flushes/sec)gaugeflush
sqlserver.database.master_files.sizeCurrent size of the database file. For a database snapshot, size reflects the maximum space that the snapshot can ever use for the file. **Note**: Use sqlserver.database.files.size for the actual size of FILESTREAM containers. Tags: db, file_id, file_type, file_location, database_files_state_descgaugekibibyte
sqlserver.database.master_files.stateDatabase file state: 0 = Online, 1 = Restoring, 2 = Recovering, 3 = Recovery_Pending, 4 = Suspect, 5 = Unknown, 6 = Offline, 7 = Defunct. Tags: db, file_id, file_type, file_location, database_files_state_descgauge-
sqlserver.database.replica.transaction_delayTotal delay in waiting for unterminated commit acknowledgment for all the current transactions, in milliseconds. Tags: db. (Perf. Counter: Database Replica - Transaction Delay)gaugemillisecond
sqlserver.database.stateDatabase state: 0 = Online, 1 = Restoring, 2 = Recovering, 3 = Recovery_Pending, 4 = Suspect, 5 = Emergency, 6 = Offline, 7 = Copying, 10 = Offline_Secondary. Tags: db, database_state_desc, database_recovery_model_descgauge-
sqlserver.database.transactionsNumber of transactions started for the SQL Server instance per second. Tags: db. (Perf. Counter: Databases - Transactions/sec)gaugetransaction
sqlserver.database.user_accessDatabase user access: 0 = Multi_user, 1 = Single_user, 2 = Restricted_user. Tags: db, database_state_desc, database_recovery_model_descgauge-
sqlserver.database.write_transactionsNumber of transactions that wrote to all databases on the SQL Server instance and committed, in the last second. Tags: db. (Perf. Counter: Databases - Write Transactions/sec)gaugetransaction
sqlserver.fci.is_current_ownerWhether or not this node is the current owner of the SQL Server FCI. Tags: node_name, status, failover_clustergauge-
sqlserver.fci.statusStatus of the node in a SQL Server failover cluster instance. Tags: node_name, status, failover_clustergauge-
sqlserver.files.io_stallTotal time that users waited for I/O to complete on the file. Tags: logical_name, file_location, db, statecountmillisecond
sqlserver.files.read_bytesBytes read from the file. Tags: logical_name, file_location, db, statecountbyte/second
sqlserver.files.read_io_stallTotal time that users waited for reads on the file. Tags: logical_name, file_location, db, statecountmillisecond
sqlserver.files.read_io_stall_queuedTotal latency from IO governance pools for reads on the file. Tags: logical_name, file_location, db, statecountmillisecond
sqlserver.files.readsNumber of reads issued on the file. Tags: logical_name, file_location, db, statecountread/second
sqlserver.files.size_on_diskNumber of bytes used on the disk for this file. Tags: logical_name, file_location, db, stategaugebyte
sqlserver.files.write_io_stallTotal time that users waited for writes on the file. Tags: logical_name, file_location, db, statecountmillisecond
sqlserver.files.write_io_stall_queuedTotal latency from IO governance pools for writes on the file. Tags: logical_name, file_location, db, statecountmillisecond
sqlserver.files.writesNumber of writes issued on the file. Tags: logical_name, file_location, db, statecountwrite/second
sqlserver.files.written_bytesBytes written to the file. Tags: logical_name, file_location, db, statecountbyte/second
sqlserver.index.user_lookupsNumber of bookmark lookups by user queries. Tags: db, table, index_name, schemacountoccurrence
sqlserver.index.user_scansNumber of scans by user queries that did not use 'seek' predicate. Tags: db, table, index_name, schemacountscan
sqlserver.index.user_seeksNumber of seeks by user queries. Tags: db, table, index_name, schemacountoccurrence
sqlserver.index.user_updatesNumber of updates by user queries. This includes Insert, Delete, and Updates representing the number of operations done, not the actual rows affected. Tags: db, table, index_name, schemacountupdate
sqlserver.latches.latch_wait_timeAverage latch wait time (in milliseconds) for latch requests that had to wait. (Perf. Counter: Locks - Average Latch Wait Time (ms))gaugemillisecond
sqlserver.latches.latch_waitsNumber of latch requests that could not be granted immediately. (Perf. Counter: Locks - Latch Waits/sec)gaugerequest/second
sqlserver.locks.deadlocksNumber of lock requests per second that resulted in a deadlock. (Perf. Counter: Locks - Number of Deadlocks/sec)gaugerequest/second
sqlserver.log_shipping_primary.backup_thresholdSeconds allowed to elapse between backup operations before a SQL Server job alert is generated. (Tags: primary_db, primary_server, primary_id)gaugesecond
sqlserver.log_shipping_primary.time_since_backupSeconds since the last transaction log backup operation on the primary server. (Tags: primary_db, primary_server, primary_id)gaugesecond
sqlserver.log_shipping_secondary.last_restored_latencyThe amount of time, in seconds, that elapsed between when the log backup was created on the primary and when it was restored on the secondary. (Tags: primary_db, primary_server, secondary_db, secondary_server, secondary_id)gaugesecond
sqlserver.log_shipping_secondary.restore_thresholdSeconds allowed to elapse between restore operations before a SQL Server job alert is generated. (Tags: primary_db, primary_server, secondary_db, secondary_server, secondary_id)gaugesecond
sqlserver.log_shipping_secondary.time_since_copySeconds since last copy operation to the secondary server. (Tags: primary_db, primary_server, secondary_db, secondary_server, secondary_id)gaugesecond
sqlserver.log_shipping_secondary.time_since_restoreSeconds since the last restore operation on the secondary server. (Tags: primary_db, primary_server, secondary_db, secondary_server, secondary_id)gaugesecond
sqlserver.memory.connectionSpecifies the total amount of dynamic memory the server is using for maintaining connections. (Perf. Counter: Memory Manager - Connection Memory (KB))gaugekibibyte
sqlserver.memory.database_cacheSpecifies the amount of memory the server is currently using for the database pages cache. (Perf. Counter: Memory Manager - Database Cache Memory (KB))gaugekibibyte
sqlserver.memory.granted_workspaceSpecifies the total amount of memory currently granted to executing processes, such as hash, sort, bulk copy, and index creation operations. (Perf. Counter: Memory Manager - Granted Workspace Memory (KB))gaugekibibyte
sqlserver.memory.grants_outstandingSpecifies the total number of processes that have successfully acquired a workspace memory grant. (Perf. Counter: Memory Manager - Memory Grants Outstanding)gauge-
sqlserver.memory.lockSpecifies the total amount of dynamic memory the server is using for locks. (Perf. Counter: Memory Manager - Lock Memory (KB))gaugekibibyte
sqlserver.memory.log_pool_memoryTotal amount of dynamic memory the server is using for Log Pool. (Perf. Counter: Memory Manager - Log Pool Memory (KB))gaugekibibyte
sqlserver.memory.memory_grants_pendingSpecifies the total number of processes waiting for a workspace memory grant (Perf. Counter: Memory Manager - Memory Grants Pending)gauge-
sqlserver.memory.optimizerSpecifies the total amount of dynamic memory the server is using for query optimization. (Perf. Counter: Memory Manager - Optimizer Memory (KB))gaugekibibyte
sqlserver.memory.sql_cacheSpecifies the total amount of dynamic memory the server is using for the dynamic SQL cache. (Perf. Counter: Memory Manager - SQL Cache Memory (KB))gaugekibibyte
sqlserver.memory.stolenSpecifies the amount of memory the server is using for purposes other than database pages. (Perf. Counter: Memory Manager - Stolen Server Memory (KB))gaugekibibyte
sqlserver.memory.total_server_memorySpecifies the amount of memory the server has committed using the memory manager. (Perf. Counter: Memory Manager - Total Server Memory (KB))gaugekibibyte
sqlserver.procedures.countTotal count of executed stored procedures per procedure (DBM only). Tags: db, procedure_name.countquery
sqlserver.procedures.logical_readsTotal number of logical reads performed by executed stored procedures per procedure (DBM only). Tags: db, procedure_name.countread
sqlserver.procedures.logical_writesTotal number of logical writes performed by executed stored procedures per procedure (DBM only). Tags: db, procedure_name.countwrite
sqlserver.procedures.physical_readsTotal number of physical reads performed by executed stored procedures per procedure (DBM only). Tags: db, procedure_name.countread
sqlserver.procedures.spillsThe total number of pages spilled by execution of this stored procedure per procedure (DBM only). Tags: db, procedure_name.count-
sqlserver.procedures.timeTotal elapsed time for executed stored procedures per procedure (DBM only)countnanosecond
sqlserver.procedures.worker_timeTotal CPU time consumed by executed stored procedures per procedure (DBM only). Tags: db, procedure_name.countnanosecond
sqlserver.queries.clr_timeTotal time consumed inside Microsoft .NET Framework common language runtime (CLR) objects for executed queries per query (DBM only)countnanosecond
sqlserver.queries.columnstore_segment_readsTotal columnstore segments read by executed queries per query (DBM only)countsegment
sqlserver.queries.columnstore_segment_skipsTotal columnstore segments skipped by executed queries per query (DBM only)countsegment
sqlserver.queries.countTotal count of executed queries per query (DBM only)countquery
sqlserver.queries.dopThe total sum of degree of parallelism used by executions of this query per query (DBM only)count-
sqlserver.queries.duration.maxThe age of the longest running query per user, db, and app. (DBM only)gaugenanosecond
sqlserver.queries.duration.sumThe sum of the age of all running queries per user, db, and app. (DBM only)gaugenanosecond
sqlserver.queries.ideal_memory_grantThe total amount of ideal memory grant estimated by executions of this query per query (DBM only)countkilobyte
sqlserver.queries.logical_readsTotal number of logical reads performed by executed queries per query (DBM only)countread
sqlserver.queries.logical_writesTotal number of logical writes performed by executed queries per query (DBM only)countwrite
sqlserver.queries.memory_grantThe total amount of reserved memory received by executions of this query per query. It will always be 0 for querying a memory-optimized table (DBM only).countkilobyte
sqlserver.queries.physical_readsTotal number of physical reads performed by executed queries per query (DBM only)countread
sqlserver.queries.reserved_threadsThe total sum of reserved parallel threads used by executions of this query per query (DBM only)countthread
sqlserver.queries.rowsTotal number of rows returned by executed queries per query (DBM only)countrow
sqlserver.queries.spillsThe total number of pages spilled by execution of this query per query (DBM only)count-
sqlserver.queries.timeTotal elapsed time for executed queries per query (DBM only)countnanosecond
sqlserver.queries.used_memory_grantThe total amount of reserved memory used by executions of this query per query. It will always be 0 for querying a memory-optimized table (DBM only).countkilobyte
sqlserver.queries.used_threadsThe total sum of used parallel threads used by executions of this query per query (DBM only)countthread
sqlserver.queries.worker_timeTotal CPU time consumed by executed queries per query (DBM only)countnanosecond
sqlserver.replica.flow_control_secNumber of times flow-control initiated in the last second. Flow Control Time (ms/sec) divided by Flow Control/sec is the average time per wait. (Perf. Counter: Database Replica - Flow Control/sec)gauge-
sqlserver.replica.transaction_delayTotal delay in waiting for unterminated commit acknowledgment for all the current transactions, in milliseconds. (Perf. Counter: Database Replica - Transaction Delay)gaugemillisecond
sqlserver.scheduler.active_workers_countNumber of workers that are active. An active worker is never preemptive, must have an associated task, and is either running, runnable, or suspended. Tags: 'scheduler_id', parent_node_idgaugeworker
sqlserver.scheduler.current_tasks_countNumber of current tasks that are associated with this scheduler. Tags: 'scheduler_id', parent_node_idgaugetask
sqlserver.scheduler.current_workers_countNumber of workers that are associated with this scheduler. Tags: 'scheduler_id', parent_node_idgaugeworker
sqlserver.scheduler.runnable_tasks_countNumber of workers, with tasks assigned to them, that are waiting to be scheduled on the runnable queue. Tags: 'scheduler_id', parent_node_idgaugetask
sqlserver.scheduler.work_queue_countNumber of tasks in the pending queue. These tasks are waiting for a worker to pick them up. Tags: 'scheduler_id', parent_node_idgaugeunit
sqlserver.server.committed_memoryThe amount of memory committed to the memory managergaugebyte
sqlserver.server.cpu_countThe number of logical CPUs or vCPUs on the server.gaugebyte
sqlserver.server.physical_memoryTotal physical memory on the machinegaugebyte
sqlserver.server.target_memoryAmount of memory that can be consumed by the memory manager. When this value is larger than the committed memory, then the memory manager will try to obtain more memory. When it is smaller, the memory manager will try to shrink the amount of memory committed.gaugebyte
sqlserver.server.uptimeTotal time elapsed since the last computer restart.gaugesecond
sqlserver.server.virtual_memoryAmount of virtual memory available to the process in user mode.gaugebyte
sqlserver.stats.auto_param_attemptsNumber of auto-parameterization attempts per second. (Perf. Counter: SQL Statistics - Auto-Param Attempts/sec)gaugeattempt
sqlserver.stats.batch_requestsThe number of batch requests per second. (Perf. Counter: Buffer Manager - Batch Requests/sec)gaugerequest/second
sqlserver.stats.connectionsThe number of user connections. If DBM is enabled, this metric is tagged with status, db, and user.gaugeconnection
sqlserver.stats.failed_auto_param_attemptsNumber of failed auto-parameterization attempts per second. (Perf. Counter: SQL Statistics - Failed Auto-Params/sec)gaugeattempt
sqlserver.stats.lock_waitsThe number of times per second that SQL Server is unable to retain a lock right away for a resource. (Perf. Counter: Locks - Lock Waits/sec)gaugelock/second
sqlserver.stats.procs_blockedThe number of processes blocked. (Perf. Counter: General Statistics - Processes blocked)gaugeprocess
sqlserver.stats.safe_auto_param_attemptsNumber of safe auto-parameterization attempts per second. (Perf. Counter: SQL Statistics - Safe Auto-Params/sec)gaugeattempt
sqlserver.stats.sql_compilationsThe number of SQL compilations per second. (Perf. Counter: SQL Statistics - SQL Compilations/sec)gaugeoperation/second
sqlserver.stats.sql_recompilationsThe number of SQL re-compilations per second. (Perf. Counter: SQL Statistics - SQL Re-Compilations/sec)gaugeoperation/second
sqlserver.table.data_sizeThe size in kibibytes of data stored in this table excluding internal index pages and allocation-management pages. Tags: databaseschematablegaugekibibyte
sqlserver.table.row_countThe number of rows in this table. Tags: databaseschematablegaugerow
sqlserver.table.total_sizeThe total size of the table in kibibytes. Tags: databaseschematablegaugekibibyte
sqlserver.table.used_sizeThe size in kibibytes of data stored in this table including internal index pages and allocation-management pages. Tags: databaseschematablegaugekibibyte
sqlserver.task.context_switches_countNumber of scheduler context switches that this task has completed. Tags: 'scheduler_id'gaugeunit
sqlserver.task.pending_io_byte_averageAverage byte count of I/Os that are performed by this task. Tags: 'scheduler_id'gaugebyte
sqlserver.task.pending_io_byte_countTotal byte count of I/Os that are performed by this task. Tags: 'scheduler_id'gaugebyte
sqlserver.task.pending_io_countNumber of physical I/Os that are performed by this task. Tags: 'scheduler_id'gaugeunit
sqlserver.tempdb.file_space_usage.free_spaceThe amount of free space in the tempdb database file. **Note:** This metric is not emitted on Azure managed databases. Tags: dbgaugemebibyte
sqlserver.tempdb.file_space_usage.internal_object_spaceThe amount of space used by internal objects in the tempdb database file. **Note:** This metric is not emitted on Azure managed databases. Tags: dbgaugemebibyte
sqlserver.tempdb.file_space_usage.mixed_extent_spaceThe amount of space used by mixed extents in the tempdb database file. **Note:** This metric is not emitted on Azure managed databases. Tags: dbgaugemebibyte
sqlserver.tempdb.file_space_usage.user_object_spaceThe amount of space used by user objects in the tempdb database file. **Note:** This metric is not emitted on Azure managed databases. Tags: dbgaugemebibyte
sqlserver.tempdb.file_space_usage.version_store_spaceThe amount of space used by the version store in the tempdb database file. **Note:** This metric is not emitted on Azure managed databases.gaugemebibyte
sqlserver.transactions.longest_transaction_running_timeThe time (in seconds) that the oldest active transaction has been running. Only works if database is under read committed snapshot isolation level. (Perf. Counter: Transactions - Longest Transaction Running Time)gaugesecond
sqlserver.transactions.version_cleanup_rateThe cleanup rate of the version store in tempdb. (Perf. Counter: Transactions - Version Cleanup rate (KB/s))gaugekibibyte/second
sqlserver.transactions.version_generation_rateThe generation rate of the version store in tempdb. (Perf. Counter: Transactions - Version Generation rate (KB/s))gaugekibibyte/second
sqlserver.transactions.version_store_sizeThe size of the version store in tempdb. (Perf. Counter: Transactions - Version Store Size (KB))gaugekibibyte
sqlserver.xe.events_not_in_xmlNumber of generated events that are missing in the XML representation of the ring buffer. Tags: session_namegaugeevent
sqlserver.xe.session_statusStatus of the node in a SQL Server failover cluster instance. Tags: session_namegauge-

Official documentation

Official documentation for the SQL Server integration

Metric names and descriptions are the official Datadog integration definitions (Copyright Datadog, Inc., BSD-3-Clause), reproduced unedited. The full license terms are on the About page.