使用 SQL Insights (預覽) 監視您的 SQL 部署
適用於: Azure SQL 資料庫 Azure SQL 受控執行個體 Azure VM 上的 SQL Server
重要
SQL Insights (預覽版) 將於 2024 年 12 月 31 日淘汰。 建議您依據該日期轉換至 Azure SQL (預覽版) 的資料庫監看員或另一個資料庫監視解決方案。
資料庫監看員是下列案例建議使用的監視解決方案:需要低資料收集延遲、資產層級監視、完整的監視資料,包括查詢層級詳細資料,以及針對所收集監視資料進行進階分析的支援。 目前,資料庫監看員支援 Azure SQL 資料庫和 Azure SQL 受控執行個體。
2024 年 12 月 31 日之後,SQL Insights (預覽版) 將不受支援,且無法在 Azure 入口網站 中使用。 您會在 Log Analytics 工作區中保留 SQL Insights 收集的任何現有監視數據。
SQL Insights (預覽版) 是監視解決方案,適用於 Azure SQL 系列中的產品。 SQL Insights 使用動態管理檢視來公開您需要的資料,以監視健康情況、診斷問題和調整效能。
SQL 深入解析會從遠端執行所有監視。 專用虛擬機器上的監視代理程式連線到 SQL 資源並從遠端收集資料。 收集的資料會儲存在 Azure 監視器記錄中,以便輕鬆進行彙總、篩選和趨勢分析。 您可以從 SQL Insights 活頁簿範本檢視收集的資料,或使用記錄查詢直接深入探討資料。
下圖詳細說明資料庫引擎和 Azure 資源記錄中的資訊所採取的步驟,以及如何呈現它們。 如需 Azure SQL 記錄的詳細圖表,請參閱監視與診斷遙測。
定價
SQL Insights (預覽版) 沒有直接成本。 所有成本產生自收集資料的虛擬機器、儲存資料的 Log Analytics 工作區,以及針對資料設定的任何警示規則。
虛擬機器
針對虛擬機器,會根據虛擬機器價格頁面上發佈的價格來收費。 您需要的虛擬機器數目會根據您想要監視的連接字串數目而有所不同。 我們建議為每 100 個連接字串配置一個 Standard_B2s 大小的虛擬機器。 如需詳細資訊,請參閱 Azure 虛擬機器需求。
Log Analytics 工作區
針對 Log Analytics 工作區,會根據 Azure 監視器價格頁面上發佈的價格來收費。 SQL Insights 使用的 Log Analytics 工作區會產生資料擷取、資料保留和 (選擇性) 資料匯出成本。
確切費用會根據擷取、保留和匯出的資料量而有所不同。 此資料的數量會根據您的資料庫活動和在監視設定檔中定義的收集設定而有所不同。
警示規則
針對 Azure 監視器中的警示規則,會根據 Azure 監視器價格頁面上發佈的價格來收費。 如果您選擇使用 SQL Insights (預覽版) 建立警示,則會針對所建立的警示規則和所傳送的通知收費。
支援的版本
SQL Insights (預覽版) 支援下列環境:
- Azure SQL Database
- Azure SQL 受控執行個體
- 在下列位置執行的 SQL Server 2012 及更新版本:
- SQL Server on Azure 虛擬機器 (SQL Server 安裝在向 SQL IaaS Agent 擴充功能註冊的虛擬機器上)
- Azure 虛擬機器 (SQL Server 安裝在未向 SQL IaaS Agent 擴充功能註冊的虛擬機器上)
SQL Insights (預覽版) 不支援或對下列元件的支援有限:
- 非 Azure 執行個體:不支援在 Azure 外部環境執行的 SQL Server,包括內部部署和虛擬機。
- Azure SQL 資料庫彈性集區:無法針對彈性集區或彈性集區內的資料庫收集計量。
- Azure SQL 資料庫低服務層級:無法為基本、S0、S1 和 S2 服務層級上的資料庫收集計量。
- Azure SQL 資料庫無伺服器層級:可透過無伺服器計算層為資料庫收集計量。 不過,收集計量的程序會重設自動暫停延遲計時器,以防止資料庫進入自動暫停狀態。
- 次要複本:每個資料庫只能收集單一次要複本的計量。 如果資料庫有多個次要複本,則只能監視一個複本。
- 使用 Microsoft Entra ID (先前稱為 Azure Active Directory) 進行驗證:唯一支援的監視驗證方法是 SQL 驗證。 對於 SQL Server on Azure 虛擬機器,不支援透過自訂網域控制站上的 Active Directory 進行驗證。
區域可用性
SQL Insights (預覽版) 可在 Azure 監視器可用的所有 Azure 區域中使用,但 Azure Government 和國家雲端除外。
開啟 SQL Insights
若要開啟 SQL Insights (預覽版):
- 在 Azure 入口網站中,移至 [Azure 監視器] 功能表。
- 在 [深入解析] 區段中,選取 [SQL (預覽)]。
- 選取一個圖格以載入您要監視之 SQL 資源的體驗。
如需更多指示,請參閱啟用 SQL Insights (預覽版)和針對 SQL Insights (預覽版) 進行疑難排解。
注意
SQL Insights (預覽版) 目前不支援內部部署 SQL Server 執行個體 - 可以忽略 Azure 入口網站中的標籤。
收集的資料
SQL 深入解析會從遠端執行所有監視。 執行 SQL Server 的虛擬機器上沒有安裝任何代理程式。
SQL Insights 使用專用的監視虛擬機器,從您的 SQL 資源遠端收集資料。 每個監視虛擬機器都已安裝 Azure 監視器代理程式和 Workload Insights (WLI) 擴充功能。
WLI 擴充功能包含開放原始碼 Telegraf 代理程式。 SQL Insights 使用資料收集規則來指定 Telegraf SQL Server 外掛程式的資料收集設定。
Azure SQL 資料庫、Azure SQL 受控執行個體和 SQL Server 可使用不同的資料集。 下表描述可用的資料。 您可以在建立監視設定檔時,自訂要收集的資料集和收集頻率。
該資料表具有下列資料行:
- 易記名稱:建立監視設定檔時,如 Azure 入口網站所示的查詢名稱。
- 設定名稱:編輯監視設定檔時,如 Azure 入口網站所示的查詢名稱。
- 命名空間:Log Analytics 工作區中找到的查詢名稱。 此識別碼會出現在 InsighstMetrics 資料表
Tags
資料行的Namespace
屬性中。 - DMV:用來產生資料集的動態受控檢視。
- 預設為啟用:資料是否預設為收集。
- 預設收集頻率:預設收集資料的頻率。
適用於 Azure SQL 資料庫的資料
易記名稱 | 設定名稱 | Namespace | DMV | 預設為啟用 | 預設收集頻率 |
---|---|---|---|---|---|
DB 等候統計資料 | AzureSQLDBWaitStats |
sqlserver_azuredb_waitstats |
sys.dm_db_wait_stats |
No | 不適用 |
DBO 等候統計資料 | AzureSQLDBOsWaitstats |
sqlserver_waitstats |
sys.dm_os_wait_stats |
Yes | 60 秒 |
記憶體 Clerk | AzureSQLDBMemoryClerks |
sqlserver_memory_clerks |
sys.dm_os_memory_clerks |
Yes | 60 秒 |
資料庫 I/O | AzureSQLDBDatabaseIO |
sqlserver_database_io |
sys.dm_io_virtual_file_stats sys.database_files tempdb.sys.database_files |
Yes | 60 秒 |
伺服器屬性 | AzureSQLDBServerProperties |
sqlserver_server_properties |
sys.dm_os_job_object sys.database_files sys.databases sys.database_service_objectives |
Yes | 60 秒 |
效能計數器 | AzureSQLDBPerformanceCounters |
sqlserver_performance |
sys.dm_os_performance_counters sys.databases |
Yes | 60 秒 |
資源統計資料 | AzureSQLDBResourceStats |
sqlserver_azure_db_resource_stats |
sys.dm_db_resource_stats |
Yes | 60 秒 |
資源管理 | AzureSQLDBResourceGovernance |
sqlserver_db_resource_governance |
sys.dm_user_db_resource_governance |
Yes | 60 秒 |
要求 | AzureSQLDBRequests |
sqlserver_requests |
sys.dm_exec_sessions sys.dm_exec_requests sys.dm_exec_sql_text |
No | 不適用 |
排程器 | AzureSQLDBSchedulers |
sqlserver_schedulers |
sys.dm_os_schedulers |
No | 不適用 |
適用於 Azure SQL 受控執行個體的資料
易記名稱 | 設定名稱 | Namespace | DMV | 預設為啟用 | 預設收集頻率 |
---|---|---|---|---|---|
等候統計資料 | AzureSQLMIOsWaitstats |
sqlserver_waitstats |
sys.dm_os_wait_stats |
Yes | 60 秒 |
記憶體 Clerk | AzureSQLMIMemoryClerks |
sqlserver_memory_clerks |
sys.dm_os_memory_clerks |
Yes | 60 秒 |
資料庫 I/O | AzureSQLMIDatabaseIO |
sqlserver_database_io |
sys.dm_io_virtual_file_stats sys.master_files |
Yes | 60 秒 |
伺服器屬性 | AzureSQLMIServerProperties |
sqlserver_server_properties |
sys.server_resource_stats |
Yes | 60 秒 |
效能計數器 | AzureSQLMIPerformanceCounters |
sqlserver_performance |
sys.dm_os_performance_counters sys.databases |
Yes | 60 秒 |
資源統計資料 | AzureSQLMIResourceStats |
sqlserver_azure_db_resource_stats |
sys.server_resource_stats |
Yes | 60 秒 |
資源管理 | AzureSQLMIResourceGovernance |
sqlserver_instance_resource_governance |
sys.dm_instance_resource_governance |
Yes | 60 秒 |
要求 | AzureSQLMIRequests |
sqlserver_requests |
sys.dm_exec_sessions sys.dm_exec_requests sys.dm_exec_sql_text |
No | NA |
排程器 | AzureSQLMISchedulers |
sqlserver_schedulers |
sys.dm_os_schedulers |
No | 不適用 |
適用於 SQL Server 的資料
易記名稱 | 設定名稱 | Namespace | DMV | 預設為啟用 | 預設收集頻率 |
---|---|---|---|---|---|
等候統計資料 | SQLServerWaitStatsCategorized |
sqlserver_waitstats |
sys.dm_os_wait_stats |
Yes | 60 秒 |
記憶體 Clerk | SQLServerMemoryClerks |
sqlserver_memory_clerks |
sys.dm_os_memory_clerks |
Yes | 60 秒 |
資料庫 I/O | SQLServerDatabaseIO |
sqlserver_database_io |
sys.dm_io_virtual_file_stats sys.master_files |
Yes | 60 秒 |
伺服器屬性 | SQLServerProperties |
sqlserver_server_properties |
sys.dm_os_sys_info |
Yes | 60 秒 |
效能計數器 | SQLServerPerformanceCounters |
sqlserver_performance |
sys.dm_os_performance_counters |
Yes | 60 秒 |
磁碟區空間 | SQLServerVolumeSpace |
sqlserver_volume_space |
sys.master_files |
Yes | 60 秒 |
SQL Server CPU | SQLServerCpu |
sqlserver_cpu |
sys.dm_os_ring_buffers |
Yes | 60 秒 |
排程器 | SQLServerSchedulers |
sqlserver_schedulers |
sys.dm_os_schedulers |
No | 不適用 |
要求 | SQLServerRequests |
sqlserver_requests |
sys.dm_exec_sessions sys.dm_exec_requests sys.dm_exec_sql_text |
No | 不適用 |
可用性複本狀態 | SQLServerAvailabilityReplicaStates |
sqlserver_hadr_replica_states |
sys.dm_hadr_availability_replica_states sys.availability_replicas sys.availability_groups sys.dm_hadr_availability_group_states |
No | 60 秒 |
可用性資料庫複本 | SQLServerDatabaseReplicaStates |
sqlserver_hadr_dbreplica_states |
sys.dm_hadr_database_replica_states sys.availability_replicas |
No | 60 秒 |