本文提供設定 適用於 Linux 的 Log Analytics 代理程式 ,以將特定應用程式的效能計數器收集到 Azure 監視器中的詳細資料。 本文包含的應用程式包括:
這很重要
舊版 Log Analytics 代理程式已於 2024 年 8 月 31 日取代。 Microsoft 將不再提供 Log Analytics 代理程式的任何支援。 如果您使用 Log Analytics 代理程式將資料內嵌至 Azure 監視器,請 立即移轉至 Azure 監視器代理程式。
MySQL
如果在具有 Log Analytics 代理程式的電腦上偵測到 MySQL Server 或 MariaDB Server,則會自動安裝 MySQL Server 的效能監視提供者。 此提供者會連線到本機 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]
下表說明驗證檔案中的項目。
| 房產 | Description |
|---|---|
| 港口 | 代表 MySQL 實例正在監聽的當前端口。 連接埠 0 指定下列屬性用於預設實例。 |
| 綁定地址 | 目前的 MySQL 繫結位址。 |
| 使用者名稱 | MySQL 使用者過去常用來監控 MySQL 伺服器的執行個體。 |
| Base64 編碼密碼 | 以 Base64 編碼的 MySQL 監控使用者的密碼。 |
| 自動更新 | 指定是否要重新掃描 my.cnf 檔案中的變更,並在升級 MySQL OMI 提供者時覆寫 MySQL OMI 驗證檔案。 |
預設實例
MySQL OMI 身份驗證檔案可以定義預設實例和連接埠號,以便更輕鬆地管理一個 Linux 主機上的多個 MySQL 實例。 預設實例由埠為 0 的實例表示。 所有其他實例都會繼承從預設實例設定的屬性,除非它們指定不同的值。 例如,如果新增了在連接埠 3308 上監聽的 MySQL 實例,則使用預設實例的 bind-address、使用者名稱和 Base64 編碼密碼來嘗試監控在 3308 上監聽的實例。 如果埠號 3308 的實例綁定到另一個位址,並且使用相同的 MySQL 用戶名稱和密碼,那麼只需要更改綁定位址,其他屬性會繼承。
下表包含範例執行個體設定。
| Description | 檔案 |
|---|---|
| 預設執行個體及使用 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 語法的詳細資料。
| 行動 | Example | Description |
|---|---|---|
| autoupdate false 或 true | mycimprovauth 自動更新 否 | 設定驗證檔案是否在重新啟動或更新時自動更新。 |
| 預設 繫結位址使用者名稱密碼 | mycimprovauth 預設 127.0.0.1, root 帳號, pwd | 在 MySQL OMI 驗證檔案中設定預設執行個體。 密碼欄位應以純文字輸入 - MySQL OMI 驗證檔案中的密碼是 Base 64 編碼。 |
| 刪除 預設值或port_num | mycimprovauth 3308 | 刪除指定的實例,這可以根據預設設定或連接埠號碼來進行。 |
| help | mycimprov 幫助 | 列印要使用的命令清單。 |
| 列印 | mycimprov 列印 | 列印易於閱讀的 MySQL OMI 驗證檔案。 |
| 更新 port_num 繫結位址 使用者名稱 密碼 | mycimprov 更新 3307 127.0.0.1 root 密碼 | 更新指定的執行個體,或新增執行個體(如果不存在)。 |
下列範例命令會定義 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 Server 效能資料。
SHOW GLOBAL STATUS;
SHOW GLOBAL VARIABLES:
MySQL 使用者也需要對下列預設資料表進行 SELECT 存取權。
- 資訊結構 (information_schema)
- mysql
您可以執行下列授與命令來授與這些權限。
GRANT SELECT ON information_schema.* TO 'monuser'@'localhost';
GRANT SELECT ON mysql.* TO 'monuser'@'localhost';
備註
若要將權限授與 MySQL 監控使用者,授予使用者必須具有「GRANT 選項」權限以及正在授予的權限。
定義效能計數器
設定適用於 Linux 的 Log Analytics 代理程式以將資料傳送至 Azure 監視器之後,您必須設定要收集的效能計數器。 使用 Azure 監視器中 Windows 和 Linux 效能資料來源 中的程序,搭配下表中的計數器。
| 物件名稱 | 計數器名稱 |
|---|---|
| MySQL 資料庫 | 磁碟空間 (以位元組為單位) |
| MySQL 資料庫 | Tables |
| MySQL 伺服器 | 中止的連線百分比 |
| MySQL 伺服器 | 連接使用百分比 |
| MySQL 伺服器 | 磁碟空間使用量(以位元組為單位) |
| MySQL 伺服器 | 全表掃描百分比 |
| MySQL 伺服器 | InnoDB 緩衝池命中率 |
| MySQL 伺服器 | InnoDB 緩衝池使用率 |
| MySQL 伺服器 | InnoDB 緩衝池使用率 |
| MySQL 伺服器 | 金鑰快取命中百分比 |
| MySQL 伺服器 | 金鑰快取使用率 |
| MySQL 伺服器 | 金鑰快取寫入百分比 |
| MySQL 伺服器 | 查詢快取命中率 |
| MySQL 伺服器 | 查詢快取修剪比例百分比 |
| MySQL 伺服器 | 查詢緩存使用百分比 |
| MySQL 伺服器 | 表格緩存命中率百分比 |
| MySQL 伺服器 | 表格快取使用百分比 |
| MySQL 伺服器 | 表鎖爭用百分比 |
Apache HTTP 伺服器
如果在安裝 omsagent 配套時在電腦上偵測到 Apache HTTP Server,則會自動安裝 Apache HTTP Server 的效能監視提供者。 此提供者依賴必須載入 Apache HTTP Server 才能存取效能資料的 Apache 模組。 可以使用以下命令載入模組:
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 伺服器 | 忙碌的員工 |
| Apache HTTP 伺服器 | 閒置工人 |
| Apache HTTP 伺服器 | 忙碌工人百分比 |
| Apache HTTP 伺服器 | 中央處理器總使用百分比 |
| Apache 虛擬主機 | 每分鐘錯誤數 - 用戶端 |
| Apache 虛擬主機 | 每分鐘錯誤數 - 伺服器 |
| Apache 虛擬主機 | 每次要求的 KB |
| Apache 虛擬主機 | 每秒請求數量 KB |
| Apache 虛擬主機 | 每秒請求數 |