Log Service の照会/分析エンジンは、LogStore および外部ストレージを照会/分析します。また、SQL の join 構文でログにユーザーの属性情報を紐付けます。エンジンを使用することにより、ユーザー属性に関するメトリックを分析できます。

外部ストレージをクエリするだけでなく、そのクエリ結果を外部ストレージ (MySQL など) に直接書き込むこともできます。

外部 MySQL ストレージを作成するためのベストプラクティス: 「データベースとログを紐づけて分析

構成方法

  • 外部ストレージ API

    作成、更新、削除、リストといった API インターフェイスがあります。各 API の詳細は、該当する API ドキュメントをご参照ください。

  • 外部ストレージ管理ツール

    外部ストレージの操作は、python SDK または CLI (コマンドラインインターフェイス) より実行します。 CLI の詳細については、「CLI」をご参照ください。

手順

  1. Log Service にログを収集します。

    Log Service にログを収集する方法を選択します。詳細については、「収集方法」をご参照ください。

  2. SQL データベースに接続して MySQL テーブルを作成します。
  3. ホワイトリストを追加します。

    ホワイトリストに100.104.0.0/16を追加します。詳細については、「ホワイトリストの設定」をご参照ください。

    通常の MySQL データベースに接続する場合は、セキュリティグループにアドレスを追加します。

  4. 外部ストレージを作成します。
    外部ストレージを作成する方法は複数あります。例では、Python CLI を使用します。
    1. 次のコマンドを実行して CLI をインストールします。
      pip install -U aliyun-log-cli
    2. 外部ストレージを作成します。プロジェクトおよび外部ストレージの構成ファイル /user/config.json を指定します。
      aliyunlog log create_external_store --project_name="log-rds-demo" --config="file:///user/config.json" 
      構成ファイル /user/config.json に、外部ストレージの名前、パラメータといった情報を指定します。
      説明
      • RDS VPC 環境の場合は、vpc-id と instance-id の指定は必須です。
      • 一般的な MySQL またはクラシックネットワーク RDS の場合は、vpc-id と instance-id には空の文字列を指定します。
      • 現在、一部のリージョンでは RDS VPC にのみ対応しています。利用可能なリージョンの詳細は、「概要」をご参照ください。その他のリージョンをご希望の場合は、チケットを起票して、サポートセンターにお問い合わせください。
      構成ファイルパラメータ
      パラメータ説明
      regionサービスが存在するリージョン
      vpc-idVPC の ID
      instance-idRDS インスタンスの ID
      hostECS インスタンスの ID
      portECS インスタンスのポート
      usernameユーザー名
      passwordパスワード
      dbデータベース
      tableデータテーブル
      構成ファイルの例
      {
          "externalStoreName": "chiji_user",
          "storeType": "rds-vpc",
          "parameter": {
              "vpc-id": "vpc-*********************",
              "instance-id": "rm-**"**************,
              "host": "rm-*****************.mysql.rds.aliyuncs.com",
              "port": "3306",
              "username": "test****",
              "password": "1234****",
              "db": "chiji",
              "table": "chiji_user",
              "region": "cn-qingdao"
          }
      }
  5. その他操作

    CLI より外部ストレージを更新または削除することもできます。

    • MySQL 外部ストレージの更新
      aliyunlog log update_external_store --project_name="log-rds-demo" --config="file:///user/config.json" 
    • MySQL 外部ストレージの削除
      aliyunlog log delete_external_store --project_name="log-rds-demo" --store_name=abc