Microsoft SQL Server 整合會從 SQL Server 執行個體收集交易、連線和其他指標。
如要進一步瞭解 SQL Server,請參閱 SQL Server 說明文件。
事前準備
Ops Agent 2.15.0 版推出了支援使用 workload.googleapis.com/
前置字串的新 SQL Server 指標組合。您必須按照「設定範例」一節所述,設定代理程式以收集這些指標。
作業套件代理程式一向支援一組有限的 SQL Server 指標,這些指標使用 agent.googleapis.com/mssql/
前置字串。您不需要額外設定,即可在 Windows VM 上收集這些指標。
本文件將前面加上 agent
的指標稱為 v1 指標,而前面加上 workload
的指標則稱為 v2 指標。
- v1 指標包含交易率和連線數量資訊。
- v2 指標包括執行個體層級的批次、鎖定、頁面和使用者連線計數資訊,以及資料庫層級的交易和交易記錄資訊。
如要查看這些指標的表格,請參閱「監控項目」。
從作業套件代理程式 2.15.0 版開始,您可以設定代理程式收集 v1 指標、v2 指標,或同時收集這兩種指標。
必要條件
如要收集 SQL Server 遙測資料,您必須安裝 Ops Agent:
- 如要使用指標 v1,請安裝 1.0.0 以上版本。
- 如要使用指標 v2,請安裝 2.15.0 以上版本。
這項整合功能支援 SQL Server 11.x、12.x、13.x、14.x、15.x 和 16.x 版本。
設定 SQL Server 適用的作業套件代理程式
在 Microsoft Windows VM 上使用 Ops Agent 時,代理程式會自動收集 SQL Server v1 指標。您不需要額外進行設定。
按照指南設定 Ops Agent,新增必要元素以從 SQL Server 執行個體收集遙測資料,然後重新啟動代理程式。
設定新的 SQL Server 執行個體後,可能不會立即在 Metrics Explorer 中看到指標。只有在有可回報的資料庫活動時,Ops Agent 才會開始收集 SQL Server 指標。
範例設定
下列指令會建立設定,收集及擷取 SQL Server 的遙測資料:
請重新啟動 Ops Agent,讓這些變更生效:
- 使用遠端桌面協定或類似工具連線至執行個體,然後登入 Windows。
- 在 PowerShell 圖示上按一下滑鼠右鍵,然後選取「Run as Administrator」,即可開啟具有系統管理員權限的 PowerShell 終端機。
- 如要重新啟動代理程式,請執行下列 PowerShell 指令:
Restart-Service google-cloud-ops-agent -Force
- 如要確認代理程式已重新啟動,請執行下列指令,並驗證「Metrics Agent」和「Logging Agent」元件是否已啟動:
Get-Service google-cloud-ops-agent*
設定 v1 指標收集
Microsoft Windows VM 上的 Ops Agent 會自動收集 SQL Server v1 指標。您不需要額外進行設定。如要進一步瞭解如何僅收集 v2 指標,請參閱「設定 v2 指標收集」一文。
設定新的 SQL Server 執行個體後,SQL Server 可能不會立即回報任何指標。當有可回報的資料庫活動時,Ops Agent 就會開始收集 SQL Server 指標。
設定 v2 指標收集
如要從 SQL Server 擷取 v2 指標,您必須為 SQL Server 產生的指標建立接收器,然後為新接收器建立管道。
這個接收器不支援在設定中使用多個執行個體,例如用於監控多個端點。所有這類例項都會寫入相同的時間序列,而 Cloud Monitoring 無法區分這些例項。Ops Agent 不支援 SQL Server 命名執行個體。
如要為 mssql
指標設定接收器,請指定下列欄位:
欄位 | 預設 | 說明 |
---|---|---|
collection_interval |
60s |
time.Duration 值,例如 30s 或 5m 。 |
receiver_version |
收集的指標版本;使用 2 收集 v2 指標。 |
|
type |
這個值必須是 mssql 。 |
根據預設,系統會自動收集 v1 指標。您可以透過額外收集 v2 指標來擴充 v1 指標,也可以覆寫 v1 指標,只收集 v2 指標。
如要僅收集 v2 指標,請按照下列步驟操作:
- 為接收端命名為
mssql
。 - 將
type
欄位設為mssql
。 - 將
receiver_version
欄位設為2
。 - 在
default_pipeline
管道中使用這個接收器。這項設定會覆寫mssql
接收器的內建設定。
- 為接收端命名為
如要同時收集 v1 和 v2 指標,請按照下列步驟操作:
- 請為接收端命名為
mssql
以外的名稱,例如mssql_v2
。 - 將
type
欄位設為mssql
。 - 將
receiver_version
設為2
。 - 在新管道中使用這個接收器。這項設定會新增 v2 接收器,而非覆寫內建接收器。設定範例中的指令碼採用了這種做法。
- 請為接收端命名為
監控的內容
從 2.15.0 版本起,作業套件代理程式可收集兩組不同的指標:
- v1 指標:
agent.googleapis.com/mssql/
。 - v2 指標:
workload.googleapis.com/
。
V1 指標
下表列出作業套件代理程式從 SQL Server 執行個體收集的 v1 指標。
這個表格中的「指標類型」字串開頭必須加上 agent.googleapis.com/mssql/
。該前置字串已從表格中的項目中省略。查詢標籤時,請使用 metric.labels.
前置字串,例如 metric.labels.LABEL="VALUE"
。
指標類型 推出階段 (資源階層層級) 顯示名稱 |
|
---|---|
類別、類型、單位 受控資源 |
說明 標籤 |
connections/user
GA
(專案)
SQL Server 開放連線 |
|
GAUGE 、DOUBLE 、1
aws_ec2_instance gce_instance |
目前已開啟 SQL 伺服器連線。取樣頻率為每 60 秒一次。 |
transaction_rate
GA
(專案)
SQL Server 交易率 |
|
GAUGE 、DOUBLE 、1/s
aws_ec2_instance gce_instance |
SQL Server 每秒總交易數。取樣頻率為每 60 秒一次。 |
write_transaction_rate
GA
(project)
SQL Server 寫入交易率 |
|
GAUGE 、DOUBLE 、1/s
aws_ec2_instance gce_instance |
SQL Server 每秒寫入交易數。取樣頻率為每 60 秒一次。 |
表格產生時間:2025 年 6 月 26 日 13 點 43 分 55 秒 (世界標準時間)。
V2 指標
下表列出作業套件代理程式從 SQL Server 執行個體收集的 v2 指標。
指標類型 | |
---|---|
類型、類型 受控資源 |
標籤 |
workload.googleapis.com/sqlserver.batch.request.rate
|
|
GAUGE , DOUBLE gce_instance |
|
workload.googleapis.com/sqlserver.batch.sql_compilation.rate
|
|
GAUGE , DOUBLE gce_instance |
|
workload.googleapis.com/sqlserver.batch.sql_recompilation.rate
|
|
GAUGE , DOUBLE gce_instance |
|
workload.googleapis.com/sqlserver.lock.wait.rate
|
|
GAUGE , DOUBLE gce_instance |
|
workload.googleapis.com/sqlserver.lock.wait_time.avg
|
|
GAUGE , DOUBLE gce_instance |
|
workload.googleapis.com/sqlserver.page.buffer_cache.hit_ratio
|
|
GAUGE , DOUBLE gce_instance |
|
workload.googleapis.com/sqlserver.page.checkpoint.flush.rate
|
|
GAUGE , DOUBLE gce_instance |
|
workload.googleapis.com/sqlserver.page.lazy_write.rate
|
|
GAUGE , DOUBLE gce_instance |
|
workload.googleapis.com/sqlserver.page.life_expectancy
|
|
GAUGE , INT64 gce_instance |
|
workload.googleapis.com/sqlserver.page.operation.rate
|
|
GAUGE , DOUBLE gce_instance |
type
|
workload.googleapis.com/sqlserver.page.split.rate
|
|
GAUGE , DOUBLE gce_instance |
|
workload.googleapis.com/sqlserver.transaction.rate
|
|
GAUGE , DOUBLE gce_instance |
database
|
workload.googleapis.com/sqlserver.transaction.write.rate
|
|
GAUGE , DOUBLE gce_instance |
database
|
workload.googleapis.com/sqlserver.transaction_log.flush.data.rate
|
|
GAUGE , DOUBLE gce_instance |
database
|
workload.googleapis.com/sqlserver.transaction_log.flush.rate
|
|
GAUGE , DOUBLE gce_instance |
database
|
workload.googleapis.com/sqlserver.transaction_log.flush.wait.rate
|
|
GAUGE , DOUBLE gce_instance |
database
|
workload.googleapis.com/sqlserver.transaction_log.growth.count
|
|
CUMULATIVE , INT64 gce_instance |
database
|
workload.googleapis.com/sqlserver.transaction_log.percent_used
|
|
GAUGE , INT64 gce_instance |
database
|
workload.googleapis.com/sqlserver.transaction_log.shrink.count
|
|
CUMULATIVE , INT64 gce_instance |
database
|
workload.googleapis.com/sqlserver.user.connection.count
|
|
GAUGE , INT64 gce_instance |
|
驗證設定
本節說明如何確認您已正確設定 SQL Server 接收器。作業套件代理程式可能需要一兩分鐘的時間,才能開始收集遙測資料。
如要確認 SQL Server 指標是否已傳送至 Cloud Monitoring,請執行下列操作:
-
前往 Google Cloud 控制台的 leaderboard「Metrics Explorer」頁面:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果。
- 在查詢建構工具窗格的工具列中,選取名稱為 code MQL 或 code PromQL 的按鈕。
- 確認「Language」切換按鈕中已選取「MQL」。語言切換鈕位於可讓您設定查詢格式的工具列中。
- 如要查看 v1 指標,請在編輯器中輸入下列查詢,然後點選「執行查詢」:
fetch gce_instance | metric 'agent.googleapis.com/mssql/connections/user' | every 1m
- 如要查看 v2 指標,請在編輯器中輸入下列查詢,然後點選「執行」:
fetch gce_instance | metric 'workload.googleapis.com/sqlserver.user.connection.count' | every 1m
查看資訊主頁
如要查看 SQL Server 指標,您必須先設定圖表或資訊主頁。SQL Server 整合功能會提供一或多個資訊主頁。設定整合後,Ops Agent 就會開始收集指標資料,並自動安裝所有資訊主頁。
您也可以不安裝整合功能,查看資訊主頁的靜態預覽畫面。
如要查看已安裝的資訊主頁,請按照下列步驟操作:
-
在 Google Cloud 控制台中,前往「Dashboards」(資訊主頁)
頁面:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果。
- 選取「Dashboard List」分頁標籤,然後選擇「Integrations」類別。
- 按一下要查看的資訊主頁名稱。
如果您已設定整合,但尚未安裝資訊主頁,請檢查作業套件代理程式是否正在執行。如果資訊主頁中沒有圖表的指標資料,則無法安裝資訊主頁。作業套件代理程式開始收集指標後,系統會自動安裝資訊主頁。
如要查看資訊主頁的靜態預覽畫面,請按照下列步驟操作:
-
在 Google Cloud 控制台中,前往「Integrations」(整合) 頁面:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果。
- 按一下「Compute Engine」部署平台篩選器。
- 找出 SQL Server 的項目,然後按一下「View Details」。
- 選取「資訊主頁」分頁標籤,即可查看靜態預覽畫面。如果已安裝資訊主頁,請按一下「View dashboard」前往該頁面。
如要進一步瞭解 Cloud Monitoring 中的資訊主頁,請參閱「資訊主頁和圖表」。
如要進一步瞭解如何使用「Integrations」頁面,請參閱管理整合。
安裝快訊政策
快訊政策會指示 Cloud Monitoring 在發生特定情況時通知您。SQL Server 整合功能包含一或多項快訊政策供您使用。您可以在 Monitoring 的「Integrations」頁面中查看及安裝這些警示政策。
如要查看可用快訊政策的說明並安裝,請按照下列步驟操作:
-
在 Google Cloud 控制台中,前往「Integrations」(整合) 頁面:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果。
- 找出 SQL Server 的項目,然後按一下「View Details」。
- 選取「警示」分頁標籤。這個分頁會說明可用的快訊政策,並提供安裝快訊政策的介面。
- 安裝快訊政策。快訊政策需要知道要將已觸發快訊的通知傳送到哪裡,因此需要您提供安裝資訊。如要安裝快訊政策,請按照下列步驟操作:
- 從可用警示政策清單中選取要安裝的政策。
在「設定通知」部分,選取一或多個通知管道。您可以選擇停用通知管道的使用,但這樣一來,警示政策就會靜默觸發。您可以在「監控」中查看狀態,但不會收到通知。
如要進一步瞭解通知管道,請參閱「管理通知管道」。
- 按一下「建立政策」。
如要進一步瞭解 Cloud Monitoring 中的快訊政策,請參閱快訊簡介。
如要進一步瞭解如何使用「Integrations」頁面,請參閱管理整合。
後續步驟
如需有關如何使用 Ansible 安裝作業套件代理程式、設定第三方應用程式,以及安裝範例資訊主頁的逐步操作說明,請參閱「 安裝作業套件代理程式以排解第三方應用程式的問題」影片。