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

AnalyticDB:Log Serviceを使用してログデータをAnalyticDB for MySQLに転送する

最終更新日:Jun 28, 2024

ログは、履歴データの処理や問題の診断に重要な役割を果たす特殊なタイプのデータです。 ログは、データアナリスト、開発者、およびO&M担当者にとって不可欠なデータソースです。 Alibaba Cloudでは、Log Serviceを使用して、NGINXアクセスログ、Log4jログ、Apacheアクセスログ、構造化テキストなどのログをAnalyticDB for MySQLにリアルタイムで同期できます。 これにより、AnalyticDB for MySQLを使用してリアルタイムのログ分析を実行できます。

前提条件

  • 初めてLog Serviceを使用する場合は、Alibaba Cloudアカウントを使用してlog Service購入ページにログインし、[無料で入手] をクリックする必要があります。 システムは自動的に購入ページにリダイレクトします。 [Log Service Agreement of Serviceに同意する] を読み、[今すぐ有効にする] をクリックします。 Log Serviceコンソールが表示されます。
    説明 Log Serviceを有効にしている場合は、プロジェクトの作成を開始できます。
  • AnalyticDB for MySQLを使用する前に、次の要件が満たされていることを確認してください。
    1. AnalyticDB for MySQLクラスターが作成されます。 詳細については、「クラスターの作成」をご参照ください。
    2. データベースアカウントが作成されます。 詳細については、「データベースアカウントの作成」をご参照ください。
    3. それで、データベースが作成されます。 詳細については、「データベースの作成」をご参照ください。
    4. パブリックエンドポイントを使用してAnalyticDB for MySQLクラスターに接続する必要がある場合は、パブリックエンドポイントが適用されます。 詳細については、「パブリックエンドポイントの申請またはリリース」をご参照ください。
    5. CREATE tableステートメントを使用してテーブルを作成し、AnalyticDB for MySQLに転送されたログデータを格納します。 詳細については、「CREATE TABLE」をご参照ください。

LogShipperタスクの作成

Log Serviceのデータ変換モジュールのエクスポート機能を使用して、Logstoreに収集されたログをAnalyticDB for MySQLに転送できます。

  1. にログインします。Log Serviceコンソール.
  2. プロジェクトとLogstoreを作成します。

    この例では、adb-testという名前のプロジェクトとadb-sourceという名前のLogstoreが作成されます。 詳細については、「プロジェクトの作成」および「Logstore の作成」をご参照ください。

    説明 ログは1つのリージョン内でのみ転送できるため、Log ServiceプロジェクトとAnalyticDB for MySQLクラスターは同じリージョンに配置する必要があります。
  3. On theログストアタブで、Logstoreを見つけて、> > データ変換 > エクスポート > AnalyticDB.

    Log Serviceを使用して初めてAnalyticDB for MySQLにログデータを転送する場合は、log Serviceのアクセス許可をAnalyticDB for MySQLに付与する必要があります。

    1. AnalyticDBの右側にある [+] アイコンをクリックします。 承認を完了するように求められます。 [権限] をクリックします。
    2. [クラウドリソースアクセス権限付与] ページで、[権限付与ポリシーの確認] をクリックし、RAMロールAliyunAnalyticDBAccesssingLogRoleをAnalyticDB for MySQLに割り当てます。
  4. 承認が完了したら、AnalyticDBの右側の [+] をクリックします。 [Ship] をクリックすると、ログデータを直接転送できます。 [データ変換に移動] をクリックして、データが転送される前にログデータを処理することもできます。
    説明 この例では、ログデータは直接転送されます。
  5. On theLogHub-データシッパーページでパラメーターを設定します。
    表1. LogHub - Data Shipperパラメーター
    パラメーター説明
    シッパー名LogShipperタスクの名前。 後の管理を容易にするために、識別可能な名前を指定することを推奨します。
    シッパーの説明LogShipperタスクの説明。 後続の管理を容易にするために、意味のある説明を指定することを推奨します。
    ClusterバージョンAnalyticDB for MySQLクラスターのバージョン。 3.0を選択します。
    クラスター名ターゲットAnalyticDB for MySQLクラスターの名前。
    データベース名ターゲットAnalyticDB for MySQLクラスター内のデータベースの名前。
    テーブル名ターゲットAnalyticDB for MySQLクラスター内のテーブルの名前。
    アカウント名ターゲットAnalyticDB for MySQLクラスターへの接続に使用されるデータベースアカウントの作成の名前。 次のいずれかのアカウントを使用できます。
    • 特権アカウント
    • 標準アカウント
    アカウントパスワードターゲットAnalyticDB for MySQLクラスターへの接続に使用されるデータベースアカウントのパスワード。
    フィールドマッピングLog Serviceは、過去10分間のすべてのログフィールドを自動的に抽出し、これらのフィールドをAnalyticDB for MySQLの宛先フィールドにマッピングします。
    配信開始時刻LogShipperタスクの開始時刻。

    ログデータがlog Serviceに書き込まれると、Log ServiceはデータをAnalyticDB for MySQLにリアルタイムで転送できます。

    汚れたデータのフィルタダーティデータをフィルターするかどうかを指定します。
    • 無効: ダーティデータが見つかった場合、LogShipperタスクを自動的に中断します。
    • 有効: ダーティデータをフィルターします。

      ダーティデータとは、データ型の変換に失敗したデータ、または必須フィールドが空のデータを指します。

  6. 上記のパラメーターを設定した後、[OK] をクリックします。 Log Serviceは、指定された配信時間にリアルタイムでAnalyticDB for MySQLテーブルにログデータを転送します。

ログデータの表示

ログがAnalyticDB for MySQLに転送された後、SELECTステートメントを実行してログデータを分析できます。 詳細は、「構文」をご参照ください。

LogShipperタスクの管理

  • タスク名をクリックすると、LogShipperタスクの実行ステータスを表示できます。 たとえば、転送されて転送に失敗したデータの量や配信の待ち時間を表示できます。
  • LogShipperタスクを変更するには、[LogShipperの変更] をクリックします。
  • LogShipperタスクを再起動するには、まず [停止] をクリックします。 LogShipperタスクが停止したら、[開始] をクリックしてLogShipperタスクを再起動します。