このトピックでは、ウェブサイトのアクセスログを例として、データ変換の全プロセスについて説明します。これにより、データ変換機能とその操作に迅速に慣れることができます。
事前準備
-
web-project という名前のプロジェクトを作成します。詳細については、「プロジェクトの管理」をご参照ください。
-
web-project プロジェクト内に、website_log という名前のソース Logstore を作成します。詳細については、「Logstore の管理」をご参照ください。
-
ウェブサイトのアクセスログが、ソース Logstore(website_log)に取り込まれています。詳細については、「データ取り込みの概要」をご参照ください。
-
web-project プロジェクト内に、website_fail という名前の送信先 Logstore を作成します。
-
Resource Access Management (RAM) ユーザーを使用する場合は、データ変換操作を実行するための権限を RAM ユーザーに付与します。詳細については、「RAM ユーザーにデータ変換操作の権限を付与する」をご参照ください。
-
ソースおよび送信先の Logstore に対してインデックスを構成します。詳細については、「インデックスの作成」をご参照ください。
データ変換ジョブはインデックスに依存しません。ただし、インデックスを構成しない場合、クエリと分析操作を実行できません。
背景情報
あるウェブサイトは、すべてのアクセスログを website_log という名前の Logstore に保存しています。ユーザー体験を向上させるため、アクセスエラーの分析が必要です。ステータスコードが 4xx のアクセスログをフィルタリングし、ユーザーの個人情報を削除したうえで、結果を website_fail という新しい Logstore に書き込み、ビジネスアナリストが利用できるようにする必要があります。以下にサンプルログを示します。
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:データ変換ジョブの作成
Simple Log Service コンソールにログインします。Simple Log Service コンソール。
データ変換ページに移動します。
[Projects] セクションで、目的のプロジェクトをクリックします。
タブで、目的の Logstore をクリックします。
クエリと分析ページで、[Data Transformation] をクリックします。
ページ右上隅で、変換対象のログデータの時間範囲を指定します。
時間範囲を選択した後、[Raw Logs] タブにログが表示されることを確認します。
-
エディターに、次の Structured Process Language (SPL) ルールを入力します。
* | extend status=cast(status as BIGINT) | where status>=0 AND status<500 | project-away remote_addr, remote_user -
SPL ルールをデバッグします。
-
[Raw Data] タブからテストデータを選択するか、手動でテストデータを入力します。

-
[▷] をクリックしてテストを実行します。
-
プレビュー結果を確認します。

-
データ変換ジョブを作成します。
[Save as Transformation Job (New Version)] をクリックします。
[Create Data Transformation Job (New Version)] パネルで、以下のパラメーターを設定し、[OK] をクリックします。
パラメーター
説明
ジョブ名
データ変換ジョブの名前です。
[Display Name]
ジョブの表示名です。
ジョブの説明
ジョブの説明です。
承認方法
データ変換ジョブがソース Logstore からデータを読み取るための権限付与方法です。オプションは以下のとおりです。
[Default Role]:データ変換ジョブが Alibaba Cloud システムロール AliyunLogETLRole を使用してソース Logstore からデータを読み取ることを許可します。システムロール AliyunLogETLRole の権限付与が必要です。その後、指示に従って他のパラメーターを設定し、権限付与を完了してください。詳細については、「デフォルトロールを使用したデータへのアクセス」をご参照ください。
重要RAM ユーザーを使用する場合、Alibaba Cloud アカウント内で権限付与が完了していることを確認してください。
Alibaba Cloud アカウント内で権限付与が完了している場合は、この操作をスキップしてください。
[Custom Role]:データ変換ジョブがカスタムロールを偽装してソース Logstore からデータを読み取ることを許可します。
カスタムロールにソース Logstore からの読み取り権限を付与する必要があります。その後、[Role ARN] フィールドにカスタムロールの Alibaba Cloud リソースネーム (ARN) を入力してください。詳細については、「カスタムロールを使用したデータへのアクセス」をご参照ください。
[Storage Destination]
送信先名
ストレージ送信先の名前です。[Storage Destination] エリアでは、[Destination Project] や [Target Store] などのパラメーターを構成する必要があります。
送信先リージョン
送信先 Logstore が属するプロジェクトのリージョンです。
送信先プロジェクト
送信先 Logstore が属するプロジェクトの名前です。送信先プロジェクトは SPL ルールによって動的に指定できます。詳細については、「処理結果の出力構成」をご参照ください。SPL ルールによって動的に指定された場合、そのプロジェクトが使用されます。それ以外の場合は、デフォルトのプロジェクトが使用されます。
重要SPL ルールによって動的に指定されたプロジェクトは、現在構成されているリージョンおよび権限付与と一致している必要があります。
ターゲットストア
変換済みデータを格納する送信先 Logstore の名前です。送信先 Logstore は SPL ルールによって動的に指定できます。詳細については、「処理結果の出力構成」をご参照ください。SPL ルールによって動的に指定された場合、その Logstore が使用されます。それ以外の場合は、デフォルトの Logstore が使用されます。
重要SPL ルールによって動的に指定された Logstore は、現在構成されているリージョン、権限付与、およびプロジェクトと一致している必要があります。ソース Logstore と送信先 Logstore は異なるものである必要があります。
[Authorization Method]
データ変換ジョブが変換済みデータを送信先 Logstore に書き込むための権限付与方法です。オプションは以下のとおりです。
[Default Role]:データ送信ジョブが Alibaba Cloud システムロール AliyunLogETLRole を偽装して、データ変換結果を送信先 Logstore に書き込むことを許可します。システムロール AliyunLogETLRole の権限付与が必要です。その後、指示に従って他のパラメーターを設定し、権限付与を完了してください。詳細については、「デフォルトロールを使用したデータへのアクセス」をご参照ください。
重要RAM ユーザーを使用する場合、Alibaba Cloud アカウント内で権限付与が完了していることを確認してください。
Alibaba Cloud アカウント内で権限付与が完了している場合は、この操作をスキップしてください。
[Custom Role]:データ変換ジョブがカスタムロールを偽装して、変換済みデータを送信先 Logstore に書き込むことを許可します。カスタムロールに送信先 Logstore への書き込み権限を付与する必要があります。その後、[Role ARN] フィールドにカスタムロールの Alibaba Cloud リソースネーム (ARN) を入力してください。詳細については、「カスタムロールを使用したデータへのアクセス」をご参照ください。
結果セットに書き込む
送信先 Logstore に書き込むデータセットです。詳細については、「データセットの説明」をご参照ください。1 つの送信先に対して複数のデータセットを構成でき、1 つのデータセットを複数の送信先で選択できます。
データ変換の時間範囲
[Time Range for Data Transformation] (データ受信時刻)
変換対象データの時間範囲です。
[All]:ジョブは、最初のログから手動で停止されるまで、ソース Logstore 内のデータを変換します。
[From Specific Time]:ジョブは、指定された開始時刻に受信されたログから手動で停止されるまで、ソース Logstore 内のデータを変換します。
[Specific Time Range]:ジョブは、指定された開始時刻から指定された終了時刻までに受信されたログのデータをソース Logstore 内で変換します。
詳細オプション
高度なパラメーター設定
変換文内にデータベースパスワードなどのパスワードを指定する必要がある場合があります。SLS では、キーと値のペアを追加してパスワードを格納できます。文内では、
res_local("key")を指定してパスワードを参照します。「[+]」アイコンをクリックして、さらにキーと値のペアを追加します。たとえば、ApsaraDB RDS インスタンスが属する VPC の ID を示すために、config.vpc.vpc_id.test1:vpc-uf6mskb0b****n9yj を追加します。
-
送信先 Logstore(website_fail)に移動して、クエリと分析操作を実行します。詳細については、「クエリと分析のクイックガイド」をご参照ください。
手順 2:データ変換ジョブの監視
-
左側のナビゲーションウィンドウで、 を選択します。
-
データ変換ジョブの一覧から、管理対象のデータ変換ジョブを見つけ、クリックします。
-
[Data Transformation Overview (New Version)] ページで、データ変換ジョブの詳細を確認します。ジョブの詳細やステータスを表示できます。また、ジョブの変更、開始、停止、削除も可能です。詳細については、「データ変換ジョブの管理(新バージョン)」をご参照ください。ジョブの実行状況やメトリックも監視できます。詳細については、「データ変換ジョブの監視とモニタリング(新バージョン)」をご参照ください。