Edit

Share via


sys.dm_os_ring_buffers (Transact-SQL)

Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance SQL database in Microsoft Fabric

Each row represents a record in a ring buffer of a specific type.

Column name Data type Description
ring_buffer_address varbinary(8) Identified for informational purposes only. Not supported. Future compatibility is not guaranteed. Not nullable.
ring_buffer_type nvarchar(60) The type of the ring buffer record. Not nullable.
timestamp bigint The time when a ring buffer record was added, in milliseconds since the computer started. Not nullable.
record nvarchar(max) Identified for informational purposes only. Not supported unless described in the official Microsoft product documentation, or used as directed by Microsoft for diagnostic and troubleshooting purposes. Future compatibility is not guaranteed. Nullable.
ring_buffer_group nvarchar(60) Identified for informational purposes only. Not supported. Future compatibility is not guaranteed. Not nullable.

Applies to: SQL Server 2025 (17.x) Preview
create_time datetime2 The time when a ring buffer record was added, in the local time of the Database Engine instance. Not nullable.

Applies to: SQL Server 2025 (17.x) Preview

Remarks

A ring buffer is a memory structure within the Database Engine that is limited to a fixed number of records. As new records arrive, older records are removed.

Records in ring buffers contain diagnostic data for the Database Engine. Most ring buffer types are used for internal purposes and aren't supported, unless described in the official Microsoft product documentation. For example, you can use ring buffers to obtain health information about Always On availability groups.

The sys.dm_os_ring_buffers DMV can also be used as directed by Microsoft for diagnostic and troubleshooting purposes.

Permissions

SQL Server 2019 (15.x) and earlier versions require the VIEW SERVER STATE permission.

SQL Server 2022 (16.x) and later versions, and Azure SQL Managed Instance, require the VIEW SERVER PERFORMANCE STATE permission on the server.

On Azure SQL Database Basic, S0, and S1 service objectives, and for databases in elastic pools, the server admin account, the Microsoft Entra admin account, or membership in the ##MS_ServerPerformanceStateReader## server role is required. On all other SQL Database service objectives, either the VIEW DATABASE PERFORMANCE STATE permission on the database, or membership in the ##MS_ServerPerformanceStateReader## server role is required.