共用方式為


使用 Log Analytics 代理程式收集 Azure 監視器中 Linux 應用程式的效能計數器

本文詳細說明如何設定適用於 Linux 的 Log Analytics 代理程式,以將特定應用程式的效能計數器收集至「Azure 監視器」。 本文包含的應用程式如下︰

重要

舊版 Log Analytics 代理程式 自 2024 年 8 月 31 日起已淘汰。 Microsoft 將不再提供對 Log Analytics 代理程式的任何支援。 如果您使用 Log Analytics 代理程式來將資料內嵌至 Azure 監視器,請立即移轉至 Azure 監視器代理程式 (英文)。

MySQL

如果使用 Log Analytics 代理程式在電腦上偵測到 MySQL Server 或 MariaDB 伺服器,則會自動安裝 MySQL 伺服器的效能監視提供者。 此提供者會連接到本機 MySQL/MariaDB 伺服器,以公開效能統計資料。 必須設定 MySQL 使用者認證,提供者才能存取 MySQL 伺服器。

設定 MySQL 認證

MySQL OMI 提供者需要預先設定的 MySQL 使用者,並已安裝 MySQL 用戶端程式庫,才能從 MySQL 執行個體查詢效能和健康情況資訊。 這些認證會儲存在儲存在Linux代理程式的驗證檔案中。 驗證檔案指定 MySQL 執行個體所接聽的繫結位址和連接埠,以及要用來收集計量的認證。

在安裝適用於Linux的Log Analytics代理程式期間,MySQL OMI 提供者會掃描 MySQL my.cnf 組態檔(預設位置),以取得系結位址和埠,並部分設定 MySQL OMI 驗證檔案。

MySQL 驗證檔案儲存在 /var/opt/microsoft/mysql-cimprov/auth/omsagent/mysql-auth

驗證檔案格式

以下是 MySQL OMI 驗證檔案的格式:

[Port]=[Bind-Address], [username], [Base64 encoded Password]
(Port)=(Bind-Address), (username), (Base64 encoded Password)
(Port)=(Bind-Address), (username), (Base64 encoded Password)
AutoUpdate=[true|false]

下表說明驗證檔案中的項目。

屬性 說明
連接埠 代表 MySQL 執行個體目前正在接聽的連接埠。 連接埠 0 指定後面的屬性用於預設執行個體。
繫結位址 目前的 MySQL 繫結位址。
username 用來監視 MySQL 伺服器執行個體的 MySQL 使用者。
Base64 編碼的密碼 MySQL 監視使用者的密碼,以 Base64 編碼。
AutoUpdate 指定是否要重新掃描 my.cnf 檔案中的變更,並在升級 MySQL OMI 提供者時覆寫 MySQL OMI 驗證檔案。

預設執行個體

MySQL OMI 驗證檔案可以定義預設執行個體和連接埠號碼,讓您更輕鬆地管理一台 Linux 主機上的多個 MySQL 執行個體。 連接埠為 0 的執行個體代表預設執行個體。 所有其他實例都會繼承預設實例所設定的屬性,除非它們指定不同的值。 例如,如果新增在埠 3308 上接聽的 MySQL 實例,則會使用預設實例的 bind-address、username 和 Base64 編碼密碼來嘗試監視在 3308 上接聽的實例。 如果 3308 上的實例系結至另一個位址並使用相同的 MySQL 使用者名稱和密碼組,則只需要系結位址,並繼承其他屬性。

下表有範例實例設定。

描述 檔案
預設執行個體和連接埠為 3308 的執行個體。 0=127.0.0.1, myuser, cnBwdA==
3308=, ,
AutoUpdate=true
預設執行個體,以及連接埠為 3308 且具有不同使用者名稱密碼的執行個體。 0=127.0.0.1, myuser, cnBwdA==
3308=127.0.1.1, myuser2,cGluaGVhZA==
AutoUpdate=true

MySQL OMI 驗證檔案程式

安裝 MySQL OMI 提供者時會隨附 MySQL OMI 驗證檔案程式,可用來編輯 MySQL OMI 驗證檔案。 驗證檔案程式位於下列位置。

/opt/microsoft/mysql-cimprov/bin/mycimprovauth

注意

omsagent 帳戶必須可讀取認證檔案。 建議以 omsgent 身分執行 mycimprovauth 命令。

下表提供使用 mycimprovauth 語法的詳細資料。

作業 範例 描述
autoupdate false or true mycimprovauth autoupdate false 設定是否在重新啟動或更新時自動更新驗證檔案。
default bind-address username password mycimprovauth default 127.0.0.1 root pwd 在 MySQL OMI 驗證檔案中設定預設執行個體。
密碼欄位應以純文字輸入 - MySQL OMI 驗證檔案中的密碼會以 Base 64 編碼。
delete default or port_num mycimprovauth 3308 依預設值或依連接埠號碼刪除指定的執行個體。
說明 mycimprov help 列印要使用的命令清單。
print mycimprov print 列印容易閱讀的 MySQL OMI 驗證檔案。
update port_num bind-address username password mycimprov update 3307 127.0.0.1 root pwd 更新指定的實例,如果實例不存在,則加入實例。

下列命令範例會為 localhost 上的 MySQL 伺服器定義預設使用者帳戶。 密碼欄位應以純文字輸入 - MySQL OMI 驗證檔案中的密碼會以 Base 64 編碼。

sudo su omsagent -c '/opt/microsoft/mysql-cimprov/bin/mycimprovauth default 127.0.0.1 <username> <password>'
sudo /opt/omi/bin/service_control restart

MySQL 效能計數器所需的資料庫權限

MySQL 使用者需要存取下列查詢,才能收集 MySQL 伺服器的效能資料。

SHOW GLOBAL STATUS;
SHOW GLOBAL VARIABLES:

MySQL 使用者需要下列預設資料表的 SELECT 存取權。

  • information_schema
  • mysql。

執行下列 grant 命令,可以授與這些權限。

GRANT SELECT ON information_schema.* TO ‘monuser’@’localhost’;
GRANT SELECT ON mysql.* TO ‘monuser’@’localhost’;

注意

若要將權限授與 MySQL 監視使用者,則授與使用者必須具有 'GRANT option' 權限以及正在授與的權限。

定義效能計數器

設定適用於 Linux 的 Log Analytics 代理程式將資料傳送至 Azure 監視器之後,您必須設定要收集的效能計數器。 使用 Azure 監視器中的 Windows 和 Linux 效能資料來源中的程序與下表中的計數器。

物件名稱 計數器名稱
MySQL 資料庫 Disk Space in Bytes
MySQL 資料庫 資料表
MySQL Server Aborted Connection Pct
MySQL Server Connection Use Pct
MySQL Server Disk Space in Bytes
MySQL Server Full Table Scan Pct
MySQL Server InnoDB Buffer Pool Hit Pct
MySQL Server InnoDB Buffer Pool Use Pct
MySQL Server InnoDB Buffer Pool Use Pct
MySQL Server Key Cache Hit Pct
MySQL Server Key Cache Use Pct
MySQL Server Key Cache Write Pct
MySQL Server Query Cache Hit Pct
MySQL Server Query Cache Prunes Pct
MySQL Server Query Cache Use Pct
MySQL Server Table Cache Hit Pct
MySQL Server Table Cache Use Pct
MySQL Server Table Lock Contention Pct

Apache HTTP Server

如果在安裝 omsagent 套件組合時在電腦上偵測到 Apache HTTP Server,則會自動安裝 Apache HTTP Server 的效能監視提供者。 此提供者所依賴的 Apache 模組必須載入至 Apache HTTP Server,才能存取效能資料。 您可以使用下列命令載入此模組:

sudo /opt/microsoft/apache-cimprov/bin/apache_config.sh -c

若要卸載 Apache 監視模組,請執行下列命令︰

sudo /opt/microsoft/apache-cimprov/bin/apache_config.sh -u

定義效能計數器

設定適用於 Linux 的 Log Analytics 代理程式將資料傳送至 Azure 監視器之後,您必須設定要收集的效能計數器。 使用 Azure 監視器中的 Windows 和 Linux 效能資料來源中的程序與下表中的計數器。

物件名稱 計數器名稱
Apache HTTP Server Busy Workers
Apache HTTP Server Idle Workers
Apache HTTP Server Pct Busy Workers
Apache HTTP Server Total Pct CPU
Apache Virtual Host Errors per Minute - Client
Apache Virtual Host Errors per Minute - Server
Apache Virtual Host KB per Request
Apache Virtual Host Requests KB per Second
Apache Virtual Host Requests per Second

下一步