监视已启用 Azure Arc 的 SQL Server(预览)

适用范围:SQL Server

你可以在 Azure 门户中使用性能仪表板监视 Azure Arc 启用的 SQL Server。 对于 Azure Arc 启用的 SQL Server 实例,系统会自动从符合条件的实例上的动态管理视图 (DMV) 数据集中收集性能指标,并将这些指标发送到 Azure 遥测管道进行准实时处理。

注意

作为预览版功能,本文中介绍的技术受制于 Microsoft Azure 预览版补充使用条款

已启用 Azure Arc 的 SQL Server 发行版本中提供了最近的更新。

在功能预览期间,可免费进行监视。 在正式发布后,将会确定此功能的费用。

在门户中查看指标:

  1. 选择 Azure Arc 启用的 SQL Server 实例。
  2. 选择“监视”>“性能仪表板”

监视可自动执行,前提是满足所有先决条件。

Azure Arc 启用的 SQL Server 性能仪表板的屏幕截图。

先决条件

要收集 Azure Arc 启用的 SQL Server 的监视数据并查看 Azure 中的性能指标,必须满足以下条件:

  • SQL Server 的 Azure 扩展版本 (WindowsAgent.SqlServer) 为 v1.1.2504.99 或更新版本。

  • Azure Arc 启用的 SQL Server 在 Windows 操作系统上运行。

    • 不支持在 Windows Server 2012 R2 及更早版本上运行的 SQL Server。
  • Azure Arc 启用的 SQL Server 是 Standard 或 Enterprise Edition。

  • SQL Server 版本为 2016 SP1 或更高版本。

  • 服务器已连接到 *.<region>.arcdataservices.com。 有关详细信息,请参阅网络要求

  • Azure Arc 启用的 SQL Server 上的许可证类型为“软件保障”或“即用即付”。

  • 你具有包含操作 Microsoft.AzureArcData/sqlServerInstances/getTelemetry/ 的 Azure 角色。 你可以使用以下内置角色,其中包括此操作:“Azure 混合数据库管理员 - 只读服务角色”。 有关详细信息,请参阅 Azure 内置角色

当前限制

目前不支持故障转移群集实例。

禁用或启用数据收集

Azure 门户

  • 在 Azure Arc 启用的 SQL Server 的资源页上,选择“性能仪表板(预览)”
  • 在“性能仪表板”窗格顶部,选择“配置”
  • 在“配置监视设置”窗格中,使用切换开关关闭或打开监视数据的收集。
  • 选择“应用设置”

Azure CLI

要为 Azure Arc 启用的 SQL Server 禁用监视数据收集功能,请在 Azure CLI 中运行以下命令。 请将占位符替换为订阅 ID、资源组名称和资源名称。

az resource update --ids "/subscriptions/<sub_id>/resourceGroups/<resource_group>/providers/Microsoft.AzureArcData/SqlServerInstances/<resource_name>" --set 'properties.monitoring.enabled=false' --api-version 2023-09-01-preview

要为 Azure Arc 启用的 SQL Server 启用监视数据收集功能,请运行以下命令。 请将占位符替换为订阅 ID、资源组名称和资源名称。

az resource update --ids "/subscriptions/<sub_id>/resourceGroups/<resource_group>/providers/Microsoft.AzureArcData/SqlServerInstances/<resource_name>" --set 'properties.monitoring.enabled=true' --api-version 2023-09-01-preview

启用收集的命令可能会成功运行,但仅当满足前面列出的所有先决条件时,Azure 门户才会收集和显示监视数据。

收集的数据

以下列表反映了启用监视功能时 Azure 门户从 Azure Arc 启用的 SQL Server 上的 DMV 数据集中收集的监视数据。 该门户不会收集任何个人数据或客户内容。

可用的会话

说明:运行请求的会话具有阻止程序,或具有待处理的事务。

数据集名称:SqlServerActiveSessions

收集频率:每 30 秒一次

收集的字段:

  • connection_id
  • database_id
  • database_name
  • machine_name
  • sample_time_utc
  • session_id
  • session_status
  • sql_server_instance_name

CPU 使用率

说明:一段时间内的 CPU 使用率。

数据集名称:SqlServerCPUUtilization

收集频率:每 10 秒一次

收集的字段:

  • avg_cpu_percent
  • idle_cpu_percent
  • machine_name
  • other_process_cpu_percent
  • process_sample_time_utc
  • sample_time_utc
  • sql_process_cpu_percent
  • sql_server_instance_name

数据库属性

说明:包括数据库选项及其他数据库元数据。

数据集名称:SqlServerDatabaseProperties

收集频率:每 5 分钟一次

收集的字段:

  • collation_name
  • collection_time_utc
  • compatibility_level
  • containment_desc
  • count_suspect_pages
  • create_date
  • database_id
  • database_name
  • delayed_durability_desc
  • force_last_good_plan_actual_state
  • is_accelerated_database_recovery_on
  • is_auto_create_stats_on
  • is_auto_shrink_on
  • is_auto_update_stats_async_on
  • is_auto_update_stats_on
  • is_broker_enabled
  • is_cdc_enabled
  • is_change_feed_enabled
  • is_distributor
  • is_encrypted
  • is_in_standby
  • is_ledger_on
  • is_merge_published
  • is_parameterization_forced
  • is_primary_replica
  • is_published
  • is_read_committed_snapshot_on
  • is_read_only
  • is_subscribed
  • last_good_checkdb_time
  • log_reuse_wait_desc
  • machine_name
  • notable_db_scoped_configs
  • page_verify_option_desc
  • query_store_actual_state_desc
  • query_store_query_capture_mode_desc
  • recovery_model_desc
  • sample_time_utc
  • snapshot_isolation_state
  • sql_server_instance_name
  • state_desc
  • updateability
  • user_access_desc

数据库存储利用率

说明:包括其存储利用率和持久性版本存储。

数据集名称:SqlServerDatabaseStorageUtilization

收集频率:每 1 分钟一次

收集的字段:

  • collection_time_utc
  • count_data_files
  • count_log_files
  • data_size_allocated_mb
  • data_size_used_mb
  • database_id
  • database_name
  • is_primary_replica
  • log_size_allocated_mb
  • log_size_used_mb
  • machine_name
  • online_index_version_store_size_mb
  • persistent_version_store_size_mb
  • sample_time_utc
  • sql_server_instance_name

内存利用率

说明:内存分配器和该分配器的内存消耗。

数据集名称:SqlServerMemoryUtilization

收集频率:每 10 秒一次

收集的字段:

  • machine_name
  • memory_size_mb
  • memory_clerk_name
  • memory_clerk_type
  • sample_time_utc
  • sql_server_instance_name

性能计数器(常见)

说明:包括 SQL Server 记录的常见性能计数器。

数据集名称:SqlServerPerformanceCountersCommon

收集频率:每 1 分钟一次

收集的计数器:

  • Active Temp Tables
  • Active Transactions
  • Background writer pages/sec
  • Batch Requests/sec
  • 缓冲区缓存命中率
  • 缓存命中率
  • Checkpoint pages/sec
  • Errors/sec
  • Free Space in tempdb (KB)
  • Granted Workspace Memory (KB)
  • Latch Waits/sec
  • Lazy writes/sec
  • Lock Memory (KB)
  • 已锁定页分配 (KB)
  • Log Bytes Flushed/sec
  • Log Flushes/sec
  • Logical Connections
  • Logins/sec
  • Logouts/sec
  • Number of Deadlocks/sec
  • 操作系统可用的物理内存 (KB)
  • 内存不足计数
  • Page life expectancy
  • Page reads/sec
  • Page writes/sec
  • 正在使用的进程物理内存 (KB)
  • 进程物理内存不足
  • Processes blocked
  • Readahead pages/sec
  • SQL Attention rate
  • SQL Compilations/sec
  • SQL Re-Compilations/sec
  • 系统内存信号状态高
  • 系统内存信号状态低
  • Target Server Memory (KB)
  • Temp Tables Creation Rate
  • Total Server Memory (KB)
  • Transactions/sec
  • 用户连接
  • Write Transactions/sec

性能计数器(详细信息)

说明:包括 SQL Server 记录的详细性能计数器。

数据集名称:SqlServerPerformanceCountersDetailed

收集频率:每 1 分钟一次

收集的计数器:

  • Average Wait Time (ms)
  • Backup/Restore Throughput/sec
  • Bulk Copy Rows/sec
  • Bulk Copy Throughput/sec
  • Cache Object Counts
  • Connection Memory (KB)
  • 数据文件大小 (KB)
  • Database pages
  • Errors/sec
  • Failed Auto-Params/sec
  • Free list stalls/sec
  • 大型页分配 (KB)
  • Local node page lookups/sec
  • Lock Timeouts (timeout > 0)/sec
  • 日志文件大小 (KB)
  • 日志文件已用大小 (KB)
  • Log Flush Wait Time
  • Log Growths
  • Log Shrinks
  • Optimizer Memory (KB)
  • Page lookups/sec
  • Percent Log Used
  • 进程虚拟内存不足
  • Remote node page lookups/sec
  • Shrink Data Movement Bytes/sec
  • Temp Tables For Destruction
  • Version Cleanup rate (KB/s)
  • Version Generation rate (KB/s)
  • Version Store Size (KB)
  • 已使用的 XTP 内存(KB)

存储 I/O

说明:包括每秒的累计输入/输出 (IOPS)、吞吐量和延迟统计信息。

数据集名称:SqlServerStorageIO

收集频率:每 10 秒一次

收集的字段:

  • database_id
  • database_name
  • file_id
  • file_max_size_mb
  • file_size_mb
  • file_type
  • io_stall_queued_read_ms
  • io_stall_queued_write_ms
  • io_stall_read_ms
  • io_stall_write_ms
  • machine_name
  • num_of_bytes_read
  • num_of_bytes_written
  • num_of_reads
  • num_of_writes
  • sample_time_utc
  • size_on_disk_bytes
  • sql_server_instance_name

等待统计信息

注意

此时无法在性能仪表板上可视化等待统计信息。

说明:包括数据库引擎实例的等待类型和等待统计信息。

数据集名称:SqlServerWaitStats

收集频率:每 10 秒一次

收集的字段:

  • machine_name
  • max_wait_time_ms
  • resource_wait_time_ms
  • sample_time_utc
  • signal_wait_time_ms
  • sql_server_instance_name
  • wait_category
  • wait_time_ms
  • wait_type
  • waiting_tasks_count