クイックプレビュー機能を使用すると、データ処理の文を迅速に検証し、出力を無料で確認できます。このトピックでは、この機能の使用方法と例について説明します。
前提条件
データが収集されました。詳細については、「データ収集」をご参照ください。
操作手順
Simple Log Service コンソールにログインします。
-
データ変換ページに移動します。
「プロジェクト」セクションで、対象のプロジェクトをクリックします。
タブで、目的の Logstore をクリックします。
-
クエリと分析ページで、データ処理 をクリックします。
-
右上隅で、データの時間範囲を選択します。
時間範囲を選択した後、[生ログ] タブにログが表示されることを確認してください。
-
エディターにデータ処理の文を入力します。
構文の詳細については、「データ処理の構文」をご参照ください。
説明エディターはデータ処理の文中のコメントをサポートしています。この機能を使用して、コードを 1 行ずつデバッグできます。
-
データをプレビューします。
-
ページの右上隅にある Quick をクリックします。
-
ページの下部にある Test Data をクリックします。
-
Test Data タブで、テストデータを入力します。
テストデータには、ベースデータとディメンションテーブルデータが含まれます。
{ "ローカル時間": "25/May/2020:01:56:22", "ユーザーエージェント": "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.xxx) Safari/534.18", "リクエスト:メソッド": "GET", "リモートユーザー": "john" }-
Data タブで、テストデータを設定します。
[生ログ] タブでログエントリを見つけ、Add Test Data をクリックしてサンプルとして追加します。手動でテストデータを入力することもできます。
説明-
1 回のプレビューのテストデータサイズは 1 MB を超えることはできません。
-
複数のテストデータエントリは空白行で区切ってください。
-
複数行にまたがるフィールド値の場合は、値が単一のフィールドとして解析されるように、値を 3 つのバックティック (
```) で囲んでください。 -
Data タブでは、テストデータはキーと値 (KV) 形式または JSON 形式にすることができます。KV 形式では、コロン (:) を使用してキーと値を区切ります。
-
例 1:このサンプルには 2 つのテストエントリが含まれています。1 つ目は KV 形式で、複数行の
tracebackフィールドが含まれています。2 つ目は JSON 形式です。time_local: 25/May/2020:01:56:22 user agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.661.0 Safari/534.18 "request:method": GET ``` traceback: Traceback (most recent call last): File "traceback_print_exc.py", line 20, in <module> produce_exception() File "/home/user/code/test.py", line 16, in produce_exception produce_exception(recursion_level-1) File "/home/user/code/test.py", line 18, in produce_exception raise RuntimeError() RuntimeError ``` { "time_local": "25/May/2020:01:56:22", "user agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.661.0 Safari/534.18", "request:method": "GET", "remote user": "tanaka" } -
例 2:3 つのテストデータエントリを含む単一の JSON 配列です。
[ { "time_local": "25/May/2020:01:56:22", "user agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.661.0 Safari/534.18", "request:method": "GET", "remote user": "john" }, { "time_local": "25/May/2020:01:56:22", "user agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.661.0 Safari/534.18", "request:method": "GET", "remote user": "john" }, { "time_local": "25/May/2020:01:56:22", "user agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.661.0 Safari/534.18", "request:method": "GET", "remote user": "john" } ]
-
-
Dimension Table タブで、テストデータを設定します。
ディメンションテーブルは、リソース関数のサンプルデータを提供します。リソース関数は、外部データでログを拡充します。これにより、プレビュー中にこれらの関数をテストおよびデバッグできます。
説明Dimension Table タブでは、
res_rds_mysqlまたはres_log_LogStore_pullリソース関数のテストデータのデータサンプルは CSV 形式である必要がありますが、res_oss_fileまたはres_localリソース関数の場合は CSV または JSON 形式にすることができます。例:次のサンプルには 2 つのテストデータエントリが含まれています。1 つ目は CSV 形式、2 つ目は JSON 形式です。
ip,country,province 127.0.0.1,China,Shanghai 192.168.0.0,China,Zhejiang [ { "ip": "127.0.0.1", "country": "China", "province": "Shanghai" }, { "ip": "192.168.0.0", "country": "China", "province": "Zhejiang" } ]
-
-
データのプレビュー をクリックします。
説明各プレビューでは、最大 100 件の処理結果が返されます。
その後、[変換結果] タブで結果を表示できます。
-
無効な文や不正な権限が原因でデータ処理に失敗した場合は、画面の指示に従って問題を修正してください。
-
処理結果が期待どおりの場合は、データ変換ジョブを作成して文を適用できます。詳細については、「データ変換ジョブの作成」をご参照ください。
-
-
クイックプレビューの例
-
データ処理の文
エディターに、次のデータ処理の文を入力します。
# フィールド "insert_field" に値 "test_value" を設定します e_table_map( res_rds_mysql( address="rm-uf6wjk5****.mysql.rds.aliyuncs.com", username="test_username", password="****", database="test_db", table="test_table", ), "ip", ["country", "province"], ) -
テストデータ
タブで、次の内容を入力します。
{ "id": "1001", "ip": "127.0.0.1" } -
ディメンションテーブルデータ
タブで、次の内容を入力します。
ip,country,province 127.0.0.1,China,Shanghai 192.168.0.0,China,Zhejiang -
プレビュー結果
[データをプレビュー] をクリックします。[変換結果] タブで、target0 の出力には次のフィールドが表示されます:
id:1001、ip:127.0.0.1、country:China、province:Shanghai。これは、ディメンションテーブルによってログがcountryフィールドとprovinceフィールドで正常に拡充されたことを示します。実行結果の概要には、「Total: 1, Succeeded: 1, Failed: 0」と表示されます。