このトピックでは、ビルトイン Java ランタイムを Application Real-Time Monitoring Service (ARMS) アプリケーション監視に接続する方法について説明します。
現在、Java ランタイムの Java 8 および Java 11 バージョンがサポートされています。カスタムランタイムを使用する場合は、「カスタムランタイムは ARMS アプリケーション監視拡張機能をサポート」をご参照ください。
背景情報
Function Compute が ARMS とシームレスに統合された後、ARMS を使用して関数を監視および追跡し、インスタンスレベルの可観測性、トレース情報、Java 仮想マシンメトリック、コードレベルのプロファイリング情報、アプリケーションセキュリティ情報などの関連情報を取得できます。詳細については、「Application Real-Time Monitoring Service とは」をご参照ください。
機能 | 説明 |
インスタンスレベルの可観測性 | CPU、メモリ、リクエストなどに関連するメトリックなど、インスタンスのさまざまなメトリックを表示できます。 |
トレース | ARMS エージェントは、関数と上流および下流のコンポーネントとの間のトポロジ関係と関連メトリックを自動的に取得します。 ARMS コンソールで、データベースやメッセージキューなどのコンポーネントに関する情報を表示できます。 |
JVM メトリック | ARMS エージェントは JVM アプリケーションを自動的に取得します。 ARMS コンソールで、GC の回数、ヒープ情報、スレッドスタック情報など、JVM アプリケーションの監視情報を表示できます。 |
コードレベルのプロファイリング情報 | 各メソッドで消費された時間や例外など、関数実行のコードレベルのプロファイリング情報を表示できます。 |
Runtime Application Self-Protection (RASP) テクノロジーに基づいて、アプリケーションセキュリティ機能はアプリケーションに強力なセキュリティ保護を提供し、ほとんどの未知の脆弱性に対する攻撃に抵抗できます。 |
ビルトイン Java ランタイムを ARMS に接続する
ARMS アプリケーション監視は内部拡張機能です。ビルトイン Java ランタイムを ARMS アプリケーション監視に接続するには、主に次の 2 つの部分が含まれます。
パブリックレイヤーを使用して ARMS エージェントを取得する
Function Compute は、Java 8 および Java 11 バージョンをサポートする ARMS エージェントを提供します。
ランタイム | パブリックレイヤー ARN |
java8 |
|
java11 |
|
環境変数を設定する
{
"FC_EXTENSIONS_ARMS_LICENSE_KEY": "xxx", // ライセンスキー情報
"JAVA_TOOL_OPTIONS": "-javaagent:/opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar" // ARMSプログラムのパス
}
環境変数
FC_EXTENSIONS_ARMS_LICENSE_KEY
にライセンスキー情報を設定します。ライセンスキーの取得方法については、「ライセンスキー情報の取得」をご参照ください。環境変数 JAVA_TOOL_OPTIONS を設定します。パブリックレイヤーの ARMS プログラムは、
/opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar
ディレクトリにあります。
呼び出しの完了とインスタンスのフリーズの間の期間中、呼び出し中と同じ課金ルールに基づいて料金が発生し続けます。詳細については、「製品の課金」をご参照ください。
前提条件
ビルトインランタイムを使用してイベント関数を既に作成しており、ランタイム環境は Java 8 または Java 11 です。詳細については、「イベント関数の作成」をご参照ください。
ARMS を既にアクティブ化しています。詳細については、「ARMS のアクティブ化」をご参照ください。
手順
Function Compute コンソール にログオンします。左側のナビゲーションウィンドウで、[関数] をクリックします。
上部のナビゲーションバーで、リージョンを選択します。 [関数] ページで、ターゲット関数をクリックします。
関数構成ページで、[構成] タブをクリックします。
左側の [レイヤー] タブをクリックし、[編集] をクリックします。 [関数レイヤーの編集] パネルで、
{region}
の値を変更し、[デプロイ] をクリックします。 を選択し、選択した Java 言語と互換性のある ArmsAgent レイヤーを追加します。 ARN の左側のナビゲーションウィンドウで、[環境変数] タブをクリックし、[編集] をクリックします。環境変数
JAVA_TOOL_OPTIONS=-javaagent:/opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar
とFC_EXTENSIONS_ARMS_LICENSE_KEY=yourLicensekey
を追加します。 詳細については、「環境変数の設定」をご参照ください。構成を更新してコードをデプロイすると、関数は高パフォーマンス管理のために ARMS に追加されます。 ARMS の使用には料金が発生します。詳細については、「課金概要」をご参照ください。
関数を ARMS に接続した後に監視情報を表示する場合は、ARMS が関数と同じリージョンにあることを確認してください。
ARMS は約 300 MB のメモリを消費するため、関数のメモリサイズが 512 MB 以上であることを確認してください。
検証
関数を ARMS に接続した後、ARMS コンソールで関数を確認できます。
ARMS コンソール にログインすることもできます。左側のナビゲーションウィンドウで、 を選択します。次に、ターゲットアプリケーションの名前をクリックして、詳細な監視情報を表示します。詳細については、「アプリケーションの概要」をご参照ください。