---
schema_version: "1"
id: bbbf1811bce3e906918ba1602d06e4281357c073dd7b14d4696413bec43294ff
title: Runtime Manager から外部データベースへの API Analytics の送信
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/runtime-manager/sending-api-analytics-from-arm-to-db.md
canonical_url: https://docs.mulesoft.com/jp/runtime-manager/sending-api-analytics-from-arm-to-db
source_site: docs.mulesoft.com
content_type: documentation
content_hash: e7750ee4c9b89472d4aa7e38ebeb2265cf21d76decb2b3f97016084fe168c09b
description: MuleSoft Documentation Site
latest: true
---
# Runtime Manager から外部データベースへの API Analytics の送信

API ゲートウェイランタイムで動作している Mule アプリケーションからの HTTP API Analytics データをデータベースに保存するように Runtime Manager を設定できます。

サードパーティソフトウェアへのデータの送信は、ローカルサーバーにデプロイされたアプリケーションのみで行えます。 CloudHub にデプロイされたアプリケーションでは使用できません。

このデータを Splunk、ELK、またはその他のサードパーティソフトウェアに送信する方法については、​[「外部分析ツールへのデータのエクスポート」](https://docs.mulesoft.com/jp/runtime-manager/sending-data-from-arm-to-external-analytics-software)​を参照してください。

## [](#前提条件)前提条件

次のソフトウェアがインストールされていることを確認してください。

- API ゲートウェイスタンドアロンバージョン 2.1.0 以降
- Runtime Manager エージェントバージョン 1.3.0 以降
    
    エージェントの更新については、​[「Runtime Manager エージェントのインストールまたは更新」](https://docs.mulesoft.com/jp/runtime-manager/installing-and-configuring-runtime-manager-agent)​を参照してください。

## [](#api-analytics-追跡データベース内部ハンドラーのインストール)API Analytics 追跡データベース内部ハンドラーのインストール

使用している Runtime Manager エージェントのバージョンによっては、API Analytics 追跡データベース内部ハンドラーの ZIP ファイルをインストールする必要があります。

次のエージェントバージョンでは、必要な JAR ファイルがエージェントプラグインに含まれているため、ZIP ファイルのインストールは不要です。

- 1.14.3 以降
- 2.4.5 以降

次のエージェントバージョンでは、ZIP ファイルを手動でダウンロードしてインストールする必要があります。

- 1.14.2 以前
- 2.4.4 以前

ZIP ファイルをインとする手順は次のとおりです。

1. API Analytics 追跡データベース内部ハンドラーの ZIP ファイル (​`mule-agent-internal-handlers-db-1.5.1.zip`​) をサポートに要求します。
2. ZIP ファイルを ​`{MULE_HOME}/plugins/mule-agent-plugin/lib/modules`​ フォルダーに展開します。

## [](#エージェントの設定可能項目)エージェントの設定可能項目

最新の Runtime Manager エージェントと API Analytics 追跡データベース内部ハンドラーを API ゲートウェイスタンドアロンサーバーにインストールしたら、​`{MULE_HOME}/conf/mule-agent.yml`​ 設定ファイルを変更して内部ハンドラーを有効にします。

次の MySQL Server、Oracle、Microsoft SQL Server の設定例では、必須項目は ​`driver`​、​`jdbcUrl`​、​`user`​、​`pass`​ です。 分析が保存される場所を指定する ​`apiAnalyticsTable`​ 項目も設定できます。

<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 20%;">
<col style="width: 20%;">
<col style="width: 20%;">
<col style="width: 20%;">
<col style="width: 20%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">項目</th>
<th class="tableblock halign-left valign-top">データ型</th>
<th class="tableblock halign-left valign-top">説明</th>
<th class="tableblock halign-left valign-top">型</th>
<th class="tableblock halign-left valign-top">デフォルト値</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>driver</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">String (文字列)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">データベースサーバーとの通信に使用される JDBC ドライバー。</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">必須</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>jdbcUrl</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">String (文字列)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">データベースサーバーの JDBC URL。</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">必須</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>user</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">String (文字列)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">データベースサーバーに接続するために使用するユーザー名。</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">必須</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pass</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">String (文字列)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">データベースサーバーに接続するために使用するパスワード。</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">必須</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>apiAnalyticsTable</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">String (文字列)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">エージェントがイベントを保存するテーブルの名前。</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">省略可能</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>MULE_API_ANALYTICS</code>​</p></td>
</tr>
</tbody>
</table>

## [](#mysql-の設定例)MySQL の設定例

次の例は、MySQL データベースと連携させるための Runtime Manager エージェントのセットアップ方法を示しています。

### [](#スキーマ)スキーマ

```sql
CREATE TABLE MULE_API_ANALYTICS (
  id                           CHAR(36)     NOT NULL,
  api_id                       INT          NOT NULL,
  api_name                     VARCHAR(64)  NULL,
  api_version                  VARCHAR(150) NULL,
  api_version_id               INT          NOT NULL,
  application_name             VARCHAR(42)  NULL,
  client_id                    VARCHAR(255) NULL,
  client_ip                    VARCHAR(45)  NOT NULL,
  event_id                     VARCHAR(36)  NOT NULL,
  host_id                      VARCHAR(255) NULL,
  org_id                       VARCHAR(36)  NULL,
  path                         VARCHAR(500) NOT NULL,
  policy_violation_policy_id   VARCHAR(50)  NULL,
  policy_violation_policy_name VARCHAR(150) NULL,
  policy_violation_outcome     VARCHAR(10)  NULL,
  received_ts                  VARCHAR(30)  NOT NULL,
  replied_ts                   VARCHAR(30)  NOT NULL,
  request_bytes                INT          NOT NULL,
  request_disposition          VARCHAR(10)  NOT NULL,
  response_bytes               INT          NOT NULL,
  status_code                  INT          NOT NULL,
  transaction_id               VARCHAR(36)  NULL,
  user_agent                   VARCHAR(500) NULL,
  verb                         VARCHAR(8)   NOT NULL,
  PRIMARY KEY (id)
);
```

バージョン 2.3.0 より前の Runtime Manager エージェントから移行する場合、スキーマを更新する必要があります。 次の移行スクリプトを使用して、MySQL で ​`policy_violation_policy_id`​ データ種別を更新できます。

```sql
ALTER TABLE MULE_API_ANALYTICS MODIFY policy_violation_policy_id VARCHAR(50) NULL;
```

### [](#内部ハンドラー設定)内部ハンドラー設定

1. 次の場所から MySQL JDBC ドライバーをダウンロードします。
    
    `[http://dev.mysql.com/downloads/connector/j/](http://dev.mysql.com/downloads/connector/j/)`
2. ZIP ファイルを抽出します。
3. `mysql-connector-java-{VERSION}.jar`​ ファイルを ​`{MULE_HOME}/plugins/mule-agent-plugin/lib/modules`​ にコピーします。
4. `{MULE_HOME}/conf/mule-agent.yml`​ ファイルを変更して次を含めます。
    
    ```yaml
      mule.agent.gw.http.handler.database:
        enabled: true
        driver: com.mysql.jdbc.Driver
        jdbcUrl: jdbc:mysql://192.168.61.128/mule
        user: root
        pass: test
    ```

## [](#oracle-の設定例)Oracle の設定例

次の例は、Oracle データベースと連携させるための Runtime Manager エージェントのセットアップ方法を示しています。

### [](#スキーマ-2)スキーマ

```sql
CREATE TABLE MULE_API_ANALYTICS (
  id                           CHAR(36)     NOT NULL,
  api_id                       INT          NOT NULL,
  api_name                     VARCHAR(64)  NULL,
  api_version                  VARCHAR(150) NULL,
  api_version_id               INT          NOT NULL,
  application_name             VARCHAR(42)  NULL,
  client_id                    VARCHAR(255) NULL,
  client_ip                    VARCHAR(45)  NOT NULL,
  event_id                     VARCHAR(36)  NOT NULL,
  host_id                      VARCHAR(255) NULL,
  org_id                       VARCHAR(36)  NULL,
  path                         VARCHAR(500) NOT NULL,
  policy_violation_policy_id   VARCHAR(50)  NULL,
  policy_violation_policy_name VARCHAR(150) NULL,
  policy_violation_outcome     VARCHAR(10)  NULL,
  received_ts                  VARCHAR(30)  NOT NULL,
  replied_ts                   VARCHAR(30)  NOT NULL,
  request_bytes                INT          NOT NULL,
  request_disposition          VARCHAR(10)  NOT NULL,
  response_bytes               INT          NOT NULL,
  status_code                  INT          NOT NULL,
  transaction_id               VARCHAR(36)  NULL,
  user_agent                   VARCHAR(500) NULL,
  verb                         VARCHAR(8)   NOT NULL,
  PRIMARY KEY (id)
);
```

バージョン 2.3.0 より前の Runtime Manager エージェントから移行する場合、スキーマを更新する必要があります。 たとえば、次の移行スクリプトを使用して、Oracle 11g XE で ​`policy_violation_policy_id`​ データ種別を更新できます。

```sql
ALTER TABLE MULE_API_ANALYTICS ADD temp VARCHAR(50);
update MULE_API_ANALYTICS set temp=cast(policy_violation_policy_id as VARCHAR(50));
ALTER TABLE MULE_API_ANALYTICS DROP COLUMN policy_violation_policy_id;
ALTER TABLE MULE_API_ANALYTICS RENAME COLUMN temp TO policy_violation_policy_id;
```

### [](#内部ハンドラー設定-2)内部ハンドラー設定

1. 次の場所から Oracle JDBC ドライバーをダウンロードします。
    
    `[https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html](https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html)`
2. GZ ファイルを抽出します。
3. JAR ファイルを ​`{MULE_HOME}/plugins/mule-agent-plugin/lib/modules`​ にコピーします。
4. `{MULE_HOME}/conf/mule-agent.yml`​ ファイルを変更して次を含めます。
    
    ```yaml
      mule.agent.gw.http.handler.database:
        enabled: true
        driver: oracle.jdbc.OracleDriver
        jdbcUrl: jdbc:oracle:thin:@192.168.61.128/XE
        user: root
        pass: test
    ```

## [](#microsoft-sql-server-の設定例)Microsoft SQL Server の設定例

次の例は、Microsoft SQL Server データベースと連携させるための Runtime Manager エージェントのセットアップ方法を示しています。

### [](#スキーマ-3)スキーマ

```sql
CREATE TABLE MULE_API_ANALYTICS (
  id                           CHAR(36)     NOT NULL,
  api_id                       INT          NOT NULL,
  api_name                     VARCHAR(64)  NULL,
  api_version                  VARCHAR(150) NULL,
  api_version_id               INT          NOT NULL,
  application_name             VARCHAR(42)  NULL,
  client_id                    VARCHAR(255) NULL,
  client_ip                    VARCHAR(45)  NOT NULL,
  event_id                     VARCHAR(36)  NOT NULL,
  host_id                      VARCHAR(255) NULL,
  org_id                       VARCHAR(36)  NULL,
  path                         VARCHAR(500) NOT NULL,
  policy_violation_policy_id   VARCHAR(50)  NULL,
  policy_violation_policy_name VARCHAR(150) NULL,
  policy_violation_outcome     VARCHAR(10)  NULL,
  received_ts                  VARCHAR(30)  NOT NULL,
  replied_ts                   VARCHAR(30)  NOT NULL,
  request_bytes                INT          NOT NULL,
  request_disposition          VARCHAR(10)  NOT NULL,
  response_bytes               INT          NOT NULL,
  status_code                  INT          NOT NULL,
  transaction_id               VARCHAR(36)  NULL,
  user_agent                   VARCHAR(500) NULL,
  verb                         VARCHAR(8)   NOT NULL,
  PRIMARY KEY (id)
);
```

バージョン 2.3.0 より前の Runtime Manager エージェントから移行する場合、スキーマを更新する必要があります。 次の移行スクリプトを使用して、Microsoft SQL Server 2014 で ​`policy_violation_policy_id`​ データ種別を更新できます。

```sql
ALTER TABLE MULE_API_ANALYTICS ALTER COLUMN policy_violation_policy_id VARCHAR(50) NULL;
```

### [](#内部ハンドラー設定-3)内部ハンドラー設定

1. 次の場所から SQL Server 用の Microsoft JDBC ドライバーをダウンロードします。
    
    `[https://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=11774](https://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=11774)`
2. `sqljdbc%version%.tar.gz`​ ファイルを抽出します。
3. 適切な ​`sqljdbc%version%.jar`​ ファイルを ​`{MULE_HOME}/plugins/mule-agent-plugin/lib/modules`​ にコピーします。
4. `{MULE_HOME}/conf/mule-agent.yml`​ ファイルを変更して次を含めます。
    
    ```yaml
      mule.agent.gw.http.handler.database:
        enabled: true
        driver: com.microsoft.sqlserver.jdbc.SQLServerDriver
        jdbcUrl: jdbc:sqlserver://192.168.61.128:1433;databaseName=Mule;
        user: root
        pass: test
    ```

## [](#関連情報)関連情報

- [外部分析ツールへのデータのエクスポート](https://docs.mulesoft.com/jp/runtime-manager/sending-data-from-arm-to-external-analytics-software)
- [サーバー、サーバーグループ、クラスター](https://docs.mulesoft.com/jp/runtime-manager/managing-servers)
- [自分のサーバーへのデプロイ](https://docs.mulesoft.com/jp/runtime-manager/deploying-to-your-own-servers)
- [自分のサーバーでのアプリケーションの管理](https://docs.mulesoft.com/jp/runtime-manager/managing-applications-on-your-own-servers)
- [Runtime Manager REST API](https://anypoint.mulesoft.com/exchange/portals/anypoint-platform/f1e97bc6-315a-4490-82a7-23abe036327a.anypoint-platform/arm-rest-services)