すべてのプロダクト
Search
ドキュメントセンター

Application Real-Time Monitoring Service:Function Compute の Java アプリケーションに ARMS エージェントをインストールする

最終更新日:Mar 11, 2026

Function Compute で Java 関数を実行する際、アプリケーションパフォーマンス、分散トレース、JVM の健全性に対する可視性が必要です。Application Real-Time Monitoring Service (ARMS) は内部拡張として Function Compute と統合されており、以下の機能を提供します:

  • インスタンスレベルの可観測性

  • 分散トレーシング

  • Java 仮想マシン (JVM) メトリクス

  • コードレベルのプロファイリング

  • アプリケーションセキュリティのインサイト

以下の手順では、カスタムランタイム関数に ARMS エージェントを追加する方法を説明します。

重要

ARMS エージェントは、実行時に約 300 MB のメモリを消費します。関数に少なくとも 512 MB のメモリが割り当てられていることを確認してください。データ レポートに必要な呼び出し後の 10 秒間のフリーズ ウィンドウは、標準の呼び出しレートで課金されます。詳細については、「Function Compute 課金」をご参照ください。

サポートされるランタイムと要件

要件詳細
ランタイムJava 8、Java 11、または Java 17 を使用するカスタムランタイム。組み込みの Java 8 ランタイムもサポートされています。
JDK バージョンARMS アプリケーションモニタリングによるサポートが必要です。詳細については、「ARMS がサポートする Java コンポーネントおよびフレームワーク」をご参照ください。
ヒープメモリ256 MB 超
関数のメモリ512 MB 以上 (ARMS は約 300 MB を消費)
リージョンARMS と Function Compute は同じリージョンにある必要があります。リージョン間のモニタリングはサポートされていません。

カスタムランタイムで関数を作成する方法については、「関数の作成」をご参照ください。

ステップ 1:ライセンスキーの取得

OpenAPI Explorer で DescribeTraceLicenseKey API オペレーションを呼び出して、ご利用の ARMS ライセンスキーを取得します。このキーを保存し、ステップ 3 で使用します。

ステップ 2:ARMS エージェントレイヤーの追加

Function Compute は、サポートされている各 Java バージョンに対応する ARMS エージェントをバンドルした公式共通レイヤーを提供します。

Java バージョン互換性のあるランタイム共通レイヤーの ARN
Java 8 / Java 11カスタムランタイムacs:fc:{region}:official:layers/ArmsAgent273x/versions/2
Java 17カスタムランタイムacs:fc:{region}:official:layers/ArmsAgent273x_JDK17/versions/1

ご利用の関数のリージョン ID (例:cn-hangzhou) で {region} を置き換えます。

Function Compute コンソールでレイヤーを追加するには、次の手順を実行します:

  1. Function Compute コンソールにログインします。左側のナビゲーションウィンドウで、[関数] をクリックします。

  2. 上部のナビゲーションバーでリージョンを選択します。[関数] ページで、対象の関数をクリックします。

  3. 関数の詳細ページで、[設定] タブをクリックします。

  4. 左側のナビゲーションウィンドウで [レイヤー] をクリックし、次に [変更] をクリックします。

  5. レイヤーパネルで、[+ レイヤーの追加] > [公式共通レイヤーの追加] を選択し、ご利用の Java バージョンに一致する ARMS エージェントレイヤーを選択します。

ステップ 3:環境変数の設定

ご利用の関数に、次の環境変数を設定します:

変数説明
FC_EXTENSION_ARMStrueFunction Compute で ARMS 拡張を有効にします。
FC_EXTENSIONS_ARMS_LICENSE_KEYご利用の ARMS ライセンスキーARMS エージェントを認証します。このキーはステップ 1で取得します。
重要

FC_EXTENSION_ARMS=true」を設定すると、各呼び出し完了後に関数インスタンスが 10 秒間フリーズします。これにより、ARMS エージェントが収集したデータを報告する時間が確保されます。この 10 秒間のウィンドウ中は、課金が標準レートで継続されます。詳細については、「Function Compute 課金」をご参照ください。

Function Compute コンソールでこれらの変数を設定するには、次の手順を実行します:

  1. 関数の詳細ページで、[設定] タブをクリックします。

  2. 左側のナビゲーションウィンドウで [環境変数] をクリックし、次に [変更] をクリックします。

  3. FC_EXTENSION_ARMS=trueFC_EXTENSIONS_ARMS_LICENSE_KEY=<your-license-key> を追加します。

詳細については、「環境変数の設定」をご参照ください。

ステップ 4:bootstrap スクリプトの作成

ARMS エージェントは、JVM 起動パラメーターを介して Java プロセスにアタッチします。関数が起動する際にこれらのパラメーターを渡すために、bootstrap ファイルを作成します。

次の表に、必要な JVM パラメーターを示します:

パラメーター説明
-javaagent:/opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar共通レイヤーによって提供される ARMS エージェント JAR へのパス。
-Darms.licenseKey=${FC_EXTENSIONS_ARMS_LICENSE_KEY}ステップ 3で設定した環境変数から読み取られる ARMS ライセンスキー。
-Darms.appName=${appName}ARMS コンソールに表示されるアプリケーション名。デフォルトは FC:{FunctionName} です。
-Dfc.instanceId=$HOSTNAME@`hostname -i`関数インスタンスの一意の識別子。

bootstrap スクリプトの例:

#!/bin/bash
set -eo pipefail

# ARMS アプリケーション名を設定します。
# FC_FUNCTION_NAME 変数が存在する場合、デフォルトは FC:{FunctionName} になります。
appName="FC:Custom_Java_Arms_Demo"
if [ -n "${FC_FUNCTION_NAME}" ]; then
    appName="FC:${FC_FUNCTION_NAME}"
fi

echo "appName: ${appName}"
params=" "

# ARMS JVM パラメーターを構築します。
if [[ -n "${FC_EXTENSIONS_ARMS_LICENSE_KEY}" ]]; then
    echo "FC_EXTENSIONS_ARMS_LICENSE_KEY: ${FC_EXTENSIONS_ARMS_LICENSE_KEY}"
    params+="-Dfc.instanceId=$HOSTNAME@`hostname -i` "
    params+="-javaagent:/opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar "
    params+="-Darms.licenseKey=${FC_EXTENSIONS_ARMS_LICENSE_KEY} "
    params+="-Darms.appName=${appName} "
else
    # 環境変数 FC_EXTENSIONS_ARMS_LICENSE_KEY が存在しません。FC_EXTENSIONS_ARMS_LICENSE_KEY 環境変数を設定してください!
    echo "The environment FC_EXTENSIONS_ARMS_LICENSE_KEY does not exist, please set the FC_EXTENSIONS_ARMS_LICENSE_KEY environment!"
    exit 1
fi

# アプリケーションを起動します。JAR パスを独自のものに置き換えてください。
echo "params: ${params}"
exec java $params \
    -Dserver.port=9000 \
    -jar /code/target/demo-0.0.1-SNAPSHOT.jar

/code/target/demo-0.0.1-SNAPSHOT.jar を、ご利用のアプリケーション JAR ファイルへのパスに置き換えてください。

bootstrap ファイルのデプロイ

  1. 関数コードページの WebIDE で、上記の内容で bootstrap という名前のファイルを作成します。

  2. WebIDE でターミナルを開き、chmod +x bootstrap を実行してファイルを実行可能にします。

  3. [デプロイ] をクリックします。

詳細については、「ブートストラップスクリプトを起動コマンドとして使用する」をご参照ください。

ステップ 5:統合の検証

デプロイ後、関数を少なくとも 1 回呼び出してデータ収集をトリガーし、ARMS がデータを受信していることを確認します:

  1. ARMS コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[アプリケーションモニタリング] > [アプリケーション] を選択します。

  3. bootstrap スクリプトの appName の値と一致する名前のアプリケーションを見つけます。デフォルトは FC:{FunctionName} です。

  4. アプリケーション名をクリックして、トレース、JVM メトリクス、その他のモニタリングデータを表示します。

モニタリングダッシュボードについての詳細については、「アプリケーションの概要」をご参照ください。

課金

Function Compute との ARMS 統合では、2 つのサービスから料金が発生します:

サービス料金詳細
ARMSアプリケーションモニタリング料金ARMS 課金概要
Function Compute呼び出し後の 10 秒間のフリーズウィンドウ。標準の呼び出しレートで課金されますFunction Compute の課金