次の方法で共有


Log Analytics エージェントを使用して Azure Monitor で Linux アプリケーションのパフォーマンス カウンターを収集する

この記事では、特定のアプリケーションのパフォーマンス カウンターを Azure Monitor に収集するように Linux 用 Log Analytics エージェント を構成する方法について詳しく説明します。 この記事に含まれるアプリケーションは次のとおりです。

Important

従来の Log Analytics エージェントは、2024 年 8 月 31 日の時点で非推奨となっています。 Microsoft は Log Analytics エージェントのサポートを提供しなくなります。 Log Analytics エージェントを使用して Azure Monitor にデータを取り込む場合は、 ここで Azure Monitor エージェントに移行します

MySQL

Log Analytics エージェントがインストールされているコンピューターで MySQL サーバーまたは MariaDB サーバーが検出されると、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 監視ユーザーのパスワード。
AutoUpdate MySQL OMI プロバイダーのアップグレード時に my.cnf ファイル内の変更を再スキャンし、MySQL OMI 認証ファイルを上書きするかどうかを指定します。

既定のインスタンス

MySQL OMI 認証ファイルでは、既定のインスタンスとポート番号を定義して、1 つの Linux ホストで複数の MySQL インスタンスを管理しやすくすることができます。 既定のインスタンスは、ポート 0 のインスタンスで示されます。 他のすべてのインスタンスは、異なる値を指定しない限り、既定のインスタンスから設定されたプロパティを継承します。 たとえば、ポート 3308 でリッスンしている MySQL インスタンスが追加された場合、既定のインスタンスのバインド アドレス、ユーザー名、Base64 でエンコードされたパスワードを使用して、3308 でリッスンしているインスタンスを監視しようとします。 3308 のインスタンスが別のアドレスにバインドされ、同じ MySQL ユーザー名とパスワードのペアを使用する場合は、バインド アドレスのみが必要になり、他のプロパティが継承されます。

次の表に、インスタンス設定の例を示します。

Description File
既定のインスタンスとポート 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 を使用するための構文の詳細を示しています。

Operation Example Description
autoupdate false または true mycimprovauth autoupdate false 再起動時または更新時に認証ファイルを自動的に更新するかどうかを設定します。
既定 のバインド アドレス ユーザー名パスワード mycimprovauth default 127.0.0.1 root pwd MySQL OMI 認証ファイルの既定のインスタンスを設定します。
パスワード フィールドはプレーン テキストで入力する必要があります。MySQL OMI 認証ファイルのパスワードは Base 64 でエンコードされています。
既定またはport_numを削除する mycimprovauth 3308 指定したインスタンスを既定またはポート番号で削除します。
help mycimprov のヘルプ 使用するコマンドの一覧を出力します。
印刷する mycimprov プリント 読みやすい MySQL OMI 認証ファイルを出力します。
port_numを更新 バインドアドレス ユーザー名 パスワード 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 アクセスも必要です。

  • 情報スキーマ
  • mysql。

これらの特権は、次の許可コマンドを実行することで付与できます。

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

MySQL 監視ユーザーにアクセス許可を付与するには、付与するユーザーに"GRANT オプション" 特権と付与される権限が必要です。

パフォーマンス カウンターを定義する

Azure Monitor にデータを送信するように Linux 用 Log Analytics エージェントを構成したら、収集するパフォーマンス カウンターを構成する必要があります。 次の表のカウンターを使用して、Azure Monitor の Windows および Linux のパフォーマンス データ ソースの手順に従ってください。

オブジェクト名 カウンター名
MySQL データベース ディスク領域 (バイト単位)
MySQL データベース Tables
MySQL サーバー。 中止された接続パーセント
MySQL サーバー。 接続使用率
MySQL サーバー。 ディスク領域の使用 (バイト単位)
MySQL サーバー。 フル テーブル スキャン Pct
MySQL サーバー。 InnoDB バッファー プール ヒット率
MySQL サーバー。 InnoDB バッファー プールの Pct の使用
MySQL サーバー。 InnoDB バッファー プールの Pct の使用
MySQL サーバー。 キーキャッシュヒット割合
MySQL サーバー。 キー キャッシュの使用 Pct
MySQL サーバー。 キー キャッシュ書き込み Pct
MySQL サーバー。 クエリ キャッシュ ヒット率
MySQL サーバー。 クエリ キャッシュの排除 Pct
MySQL サーバー。 クエリ キャッシュの Pct の使用
MySQL サーバー。 テーブル キャッシュ ヒット パーセント
MySQL サーバー。 テーブル キャッシュの Pct の使用
MySQL サーバー。 テーブル ロック競合率

Apache HTTP サーバー

omsagent バンドルのインストール時にコンピューターで Apache HTTP Server が検出されると、Apache HTTP Server のパフォーマンス監視プロバイダーが自動的にインストールされます。 このプロバイダーは、パフォーマンス データにアクセスするために Apache HTTP サーバーに読み込む必要がある Apache モジュールに依存します。 モジュールは、次のコマンドを使用して読み込むことができます。

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

Apache 監視モジュールをアンロードするには、次のコマンドを実行します。

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

パフォーマンス カウンターを定義する

Azure Monitor にデータを送信するように Linux 用 Log Analytics エージェントを構成したら、収集するパフォーマンス カウンターを構成する必要があります。 次の表にあるカウンターを使用し、Azure Monitor の Windows および Linux のパフォーマンスデータソースに基づいて手順を実行します。

オブジェクト名 カウンター名
Apache HTTP サーバー 作業中のワーカー
Apache HTTP サーバー 稼働していないワーカー
Apache HTTP サーバー ビジーワーカーの割合
Apache HTTP サーバー Pct CPU の合計
Apache Virtual Host 1 分あたりのエラー数 - クライアント
Apache Virtual Host 1 分あたりのエラー数 - サーバー
Apache Virtual Host 要求あたりの KB 数
Apache Virtual Host 1 秒あたりの要求数 (KB)
Apache Virtual Host 1 秒あたりの要求数

次のステップ