このトピックでは、機能と関連する操作を説明するための完全なデータ変換プロセスについて説明します。 ウェブサイトアクセスログは、プロセスを説明するための例として使用される。
準備
web-projectという名前のプロジェクトを作成します。 詳細については、「プロジェクトの管理」をご参照ください。
webプロジェクトにwebsite_logという名前のLogstoreを作成します。 LogstoreはソースLogstoreとして使用されます。 詳細については、「Logstoreの管理」をご参照ください。
Webサイトアクセスログを収集し、website_log Logstoreに保存します。 詳細については、「データ収集の概要」をご参照ください。
web-projectプロジェクトに宛先Logstore website_failを作成します。
RAM (Resource Access Management) ユーザーを使用する場合は、RAMユーザーにデータ変換ジョブに対する管理権限があることを確認してください。 詳細については、「RAMユーザーにデータ変換ジョブを管理する権限を付与する」をご参照ください。
インデックスは、ソースおよび宛先ログストアに設定されます。 詳細については、「インデックスの作成」をご参照ください。
データ変換にはインデックスは必要ありません。 ただし、インデックスを設定しないと、クエリまたは分析操作を実行できません。
背景情報
Webサイトのアクセスログは、website_log Logstoreに保存されます。 ユーザーエクスペリエンスを向上させるには、アクセスエラーを分析する必要があります。 このプロセスでは、アクセスステータスコード4XXのアクセスログをフィルタリングし、アクセスユーザーの個人情報をマスクし、フィルタリングされたログを分析のために宛先Logstore website_failに書き込む必要があります。 サンプルログ:
body_bytes_sent: 1061
http_user_agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU) AppleWebKit/533.18.1 (KHTML, like Gecko) Version/5.0.2 Safari/533.18.5
remote_addr: 192.0.2.2
remote_user: vd_yw
request_method: GET
request_uri: /request/path-1/file-5
status: 400
time_local: 10/Jun/2021:19:10:59
error: Invalid time range
ステップ1: データ変換ジョブの作成
データ変換ページに移動します。
[プロジェクト] セクションで、管理するプロジェクトをクリックします。
タブで、管理するLogstoreをクリックします。
クエリと分析ページで、[データ変換] をクリックします。
ページの右上隅で、変換するログデータの時間範囲を指定します。
時間範囲を選択したら、[生ログ] タブにログが表示されることを確認します。
編集ボックスに、次のサービス処理言語 (SPL) ルールを入力します。
* | extend status=cast(status as BIGINT) | where status>=0 AND status<500 | project-away remote_addr, remote_user
SPLルールをデバッグします。
[生ログ] タブからテストデータを選択するか、テストするログを手動で入力します。
▷ をクリックしてデバッグを開始します。
結果をプレビューします。
データ変換ジョブを作成します。
[変換ジョブとして保存 (新バージョン)] をクリックします。
[データ変換ジョブの作成 (新バージョン)] パネルで、次のパラメーターを設定し、[OK] をクリックします。
パラメーター
説明
ジョブ名
データ変換ジョブの名前。
表示名
ジョブの表示名。
ジョブの説明
ジョブの説明
権限付与方法
データ変換ジョブがソースLogstoreからデータを読み取ることを許可するために使用されるメソッド。 オプション:
デフォルトロール: データ変換ジョブがAlibaba CloudシステムロールAliyunLogETLRoleを使用して、ソースLogstoreからデータを読み取ることができます。 システムロールAliyunLogETLRoleを承認する必要があります。 次に、承認を完了するためのプロンプトに従って他のパラメーターを設定します。 詳細については、「既定のロールを使用したデータへのアクセス」をご参照ください。
重要RAMユーザーを使用する場合は、Alibaba Cloudアカウント内で承認が完了していることを確認してください。
Alibaba Cloudアカウント内で承認が完了している場合は、この操作をスキップできます。
カスタムロール: データ変換ジョブがカスタムロールを引き受けて、ソースLogstoreからデータを読み取ることを許可します。
ソースLogstoreから読み取る権限をカスタムロールに付与する必要があります。 次に、[ロールARN] フィールドにカスタムロールのAlibaba Cloudリソース名 (ARN) を入力する必要があります。 詳細については、「カスタムロールを使用したデータへのアクセス」をご参照ください。
AccessKeyペア: Alibaba CloudアカウントまたはRAMユーザーのAccessKeyペアを使用して、ソースLogstoreからデータを読み取ることをデータ変換ジョブに許可します。
Alibaba Cloudアカウント: Alibaba CloudアカウントのAccessKeyペアには、ソースLogstoreからデータを読み取る権限があります。 Alibaba CloudアカウントのAccessKeyペアをAccessKey IDおよびAccessKey Secretフィールドに入力できます。 AccessKeyペアを取得する方法の詳細については、「AccessKeyペア」をご参照ください。
RAMユーザー: ソースLogstoreからデータを読み取る権限をRAMユーザーに付与する必要があります。 次に、AccessKey IDおよびAccessKey secretフィールドに、RAMユーザーのAccessKey IDおよびAccessKey Secretを入力できます。 詳細については、「AccessKeyペアを使用したデータへのアクセス」をご参照ください。
保存先
宛先名
保存先の名前。 [ストレージの宛先] エリアで、宛先プロジェクトやターゲットストアなどのパラメーターを設定する必要があります。
宛先リージョン
ターゲットLogstoreが属するプロジェクトのリージョン。
重要データ変換 (新バージョン) は、同じリージョンでのみデータ送信をサポートします。
宛先プロジェクト
ターゲットLogstoreが属するプロジェクトの名前。
ターゲットストア
変換されたデータを格納する宛先Logstoreの名前。
権限付与方法
変換されたデータを宛先Logstoreに書き込むために、データ変換ジョブを許可するために使用されるメソッド。 オプション:
デフォルトロール: データ送信ジョブがAlibaba CloudシステムロールAliyunLogETLRoleを引き受けて、データ変換結果を宛先Logstoreに書き込むことができます。 システムロールAliyunLogETLRoleを承認する必要があります。 次に、承認を完了するためのプロンプトに従って他のパラメーターを設定します。 詳細については、「既定のロールを使用したデータへのアクセス」をご参照ください。
重要RAMユーザーを使用する場合は、Alibaba Cloudアカウント内で承認が完了していることを確認してください。
Alibaba Cloudアカウント内で承認が完了している場合は、この操作をスキップできます。
カスタムロール: データ変換ジョブがカスタムロールを引き受けて、変換されたデータを宛先Logstoreに書き込むことを許可します。 宛先Logstoreにデータを書き込む権限をカスタムロールに付与する必要があります。 次に、[ロールARN] フィールドにカスタムロールのAlibaba Cloudリソース名 (ARN) を入力します。 詳細については、「カスタムロールを使用したデータへのアクセス」をご参照ください。
AccessKeyペア: データ変換ジョブがAlibaba CloudアカウントまたはRAMユーザーのAccessKeyペアを使用して、データ変換結果を宛先Logstoreに書き込むことができます。
Alibaba Cloudアカウント: Alibaba CloudアカウントのAccessKeyペアには、宛先Logstoreにデータを書き込む権限があります。 Alibaba CloudアカウントのAccessKeyペアをAccessKey IDおよびAccessKey Secretフィールドに入力できます。 AccessKeyペアを取得する方法の詳細については、「AccessKeyペア」をご参照ください。
RAMユーザー: RAMユーザーに、宛先Logstoreにデータを書き込む権限を付与する必要があります。 次に、AccessKey IDおよびAccessKey secretフィールドに、RAMユーザーのAccessKey IDおよびAccessKey Secretを入力できます。 詳細については、「AccessKeyペアを使用したデータへのアクセス」をご参照ください。
結果セットへの書き込み
ターゲットLogstoreに書き込まれるSPLルールの結果セット。 すべての名前のない結果セットを表す
__UNNAMED__
がサポートされています。データ変換の時間範囲
データ変換の時間範囲 (データ受信時間)
変換されるデータの時間範囲。
すべて: ジョブは、ジョブが手動で停止されるまで、最初のログからソースLogstoreのデータを変換します。
[特定の時間から]: ジョブは、指定された開始時間に受信されたログから、ジョブが手動で停止されるまで、ソースLogstore内のデータを変換します。
特定の時間範囲: ジョブは、ソースLogstore内のデータを、指定された開始時刻に受信したログから、指定された終了時刻に受信したログに変換します。
高度なオプション
高度なパラメーター設定
変換文でデータベースパスワードなどのパスワードを指定する必要がある場合があります。 Simple Log Serviceでは、キーと値のペアを追加してパスワードを保存できます。 パスワードを参照するには、ステートメントで
res_local("key")
を指定します。[+] アイコンをクリックすると、キーと値のペアを追加できます。 たとえば、config.vpc.vpc_id.test1:vpc-uf6mskb0b **** n9yjを追加して、ApsaraDB RDSインスタンスが属する仮想プライベートクラウド (VPC) のIDを示すことができます。
宛先のLogstore website_failに移動し、クエリおよび分析操作を実行します。 詳細については、「ログの照会と分析」をご参照ください。
ステップ2: データ変換ジョブを観察する
左側のナビゲーションウィンドウで、
を選択します。[データ変換ジョブ] リストで、対象のジョブをクリックします。
[データ変換の概要] (新バージョン) ページで、データ変換ジョブの詳細を表示します。 ジョブの詳細とステータスを表示できます。 ジョブを変更、開始、停止、または削除することもできます。 ジョブの実行ステータスとメトリックを確認することもできます。 詳細については、「データ変換ジョブの監視 (新バージョン) 」をご参照ください。