メインコンテンツまでスキップ

RUM Agent インストール

1. モジュールの説明​

Real User Monitoring(RUM)は、モニタリング対象サーバーにエージェントを直接インストールすることなく、モニタリング対象のHTMLファイルのheadタグにJavaScriptを挿入することで、ユーザーエクスペリエンスデータをモニタリングします。

2. サポート環境​

項目内容
PlatformBrowser JavaScript (SDK)
ProtocolHTTPS → 収集サーバー(ブラウザから直接送信)
TargetChrome 103以上
Edge 103以上
Firefox 114以上
Safari 16以上
Opera 89以上
Prereq収集サーバーのHTTPSサポート(Receiver v3.0.504.15.7以上)またはHTTPSプロキシ構成
信頼された証明書の適用
CORS(Cross-Origin Resource Sharing)設定
セッションリプレイのクロスドメイン許可

3. 事前設定​

3-1. exemone-receiver RUMデータ収集設定​

データ収集用のポートと、ブラウザに送信するJSファイルのパス(receiver:rum:helper:path)を設定する必要があります。デフォルトで設定済みですが、RUMパッチ時にはxm_js_helper.jsファイルを置き換える必要があります。

  • Dockerインストール環境ファイルの場所: $EXEMONE_HOME/containers/exemone-receiver/configs/receiver.yaml
  • Binaryインストール環境ファイルの場所: $EXEMONE_HOME/services/exemone-receiver/configs/receiver.yaml
receiver:
grpc-port: 9009
intermax-port: 9010
http-port: 9008 #포트 설정
rum: #mx_js_helper.js 파일 위치 설정
helper:
path: /home/exemone/helper/xm_js_helper.js

Dockerインストール環境の場合、docker-compose.ymlファイルにhelperのパスとポートが定義されている必要があります。

3-2. HTTPSセッションモニタリング設定​

HTTPSセッションデータをモニタリングするには、次の手順を行ってください。

  1. 証明書の発行: エクセムワン接続IPを対象に、server.crtとserver.key証明書を発行して準備します。

  2. 証明書の保存: $EXEMONE_HOME/containers/exemone-receiver/certsパスにcertsフォルダを作成した後、発行された証明書を保存します。

  3. exemone-receiverへの証明書設定: receiver.yamlファイルに証明書情報を設定します。

    • Dockerインストール環境ファイルの場所: $EXEMONE_HOME/containers/exemone-receiver/configs/receiver.yaml
    • Binaryインストール環境ファイルの場所: $EXEMONE_HOME/services/exemone-receiver/configs/receiver.yaml
    receiver:
    rum:
    tls:
    enabled: true #tls 적용 여부
    cert-file: /home/exemone/certs/server.crt #인증서 파일(브라우저에서 신뢰 가능한 인증서)
    key-file: /home/exemone/certs/server.key #키 파일
  4. exemone-receiverサービスの再起動: 次のコマンドを使用してexemone-receiverサービスを再起動します。

    #Docker 환경
    sh $EXEMONE_HOME/scripts/restart.sh exemone-receiver

    #Binary 환경
    $EXEMONE_HOME/onctl restart exemone-receiver
  5. exemone-httpsへの証明書設定: http.confファイルにssl_certificateとssl_certificate_keyを追加します。

    • Dockerインストール環境ファイルの場所: $EXEMONE_HOME/containers/exemone-https/conf.d/http.conf
    • Binaryインストール環境ファイルの場所: $EXEMONE_HOME/services/exemone-https/conf.d/http.conf
    server {
    client_max_body_size 1G;
    # listen port information
    listen 8443 ssl http2;

    # ssl information
    ssl_certificate "../../../certs/server.crt"; # 추가
    ssl_certificate_key "../../../certs/server.key"; # 추가
    ssl_session_cache shared:SSL:1m;
    ssl_session_timeout 10m;
    ssl_prefer_server_ciphers on;

    # proxy
    proxy_buffer_size 8k;
    proxy_buffers 16 8k;
    proxy_busy_buffers_size 32k;

    # server information
    add_header Strict-Transport-Security "max-age=61436000; includeSubDomains; preload;";
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers 'TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256';

    location / {
    proxy_pass http://127.0.0.1:8080;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-Fr $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    }
    }

    Dockerインストール環境の場合、docker-compose.ymlファイルにcertsフォルダのパスが定義されている必要があります。

  1. exemone-httpsサービスの再起動: 次のコマンドを使用してexemone-httpsサービスを再起動します。

    #Docker 환경
    sh $EXEMONE_HOME/scripts/restart.sh exemone-https

    #Binary 환경
    $EXEMONE_HOME/onctl restart exemone-https

4. インストール方法​

4-1. RUMアプリケーションの追加​

  1. 左側メニューで環境設定 > アプリケーション > RUMメニューに移動します。
  2. RUMアプリケーション追加ボタンをクリックします。

clipboard

4-2. アプリケーション設定​

アプリケーションを識別できるように、名前とデプロイ環境情報を入力します。

clipboard

4-3. 接続設定​

モニタリング対象と接続するexemone-receiverを設定します。

  • プロトコル: http、httpsのいずれかを選択します。
  • IP: exemone-receiverの接続IPを入力します。
  • ポート: RUMのデフォルトポートは9008です。

clipboard

4-4. セッション設定​

収集セッションを設定します。

clipboard

4-5. 連携スクリプトのコピー​

RUMアプリケーション保存時に連携スクリプトがポップアップ表示されます。該当スクリプトをコピーし、モニタリング対象とするすべてのHTMLページのheadタグに追加します。

clipboard

連携スクリプトは、RUMアプリケーション一覧のScript for Connectionカラムにある表示ボタンをクリックすると、再度確認できます。

clipboard

4-6. HTMLファイルへの連携スクリプトの挿入​

モニタリング対象サーバーのHTMLファイル内のheadタグに、手順5でコピーした連携スクリプトを挿入します。

clipboard

5. RUMデータのモニタリング​

アプリケーション > ユーザーモニタリング画面に移動すると、アクティブセッション数とセッションログの情報をモニタリングできます。

clipboard