tencent cloud

Cloud Log Service

ログ構造化-単一行テキスト

ダウンロード
フォーカスモード
フォントサイズ
最終更新日: 2026-10-12 14:51:40
AI翻訳

シナリオ説明

あるユーザーがログをCLSに収集しており、単一行テキスト形式です。現在、ユーザーはログを構造化し、テキストからログ時間、ログレベル、requestidなどの情報を抽出して、後続の検索分析を容易にしたいと考えています。

シナリオ分析

ユーザーの加工要件を整理し、加工方針は以下の通りです:
1. {...}の内容は操作の詳細であり、正規表現で抽出できます。
2. 正規表現を使用してログ時間、ログレベル、URLを抽出します。

元のログ

{
"content": "[2021-11-24 11:11:08,232][328495eb-b562-478f-9d5d-3bf7e][INFO] curl -H 'Host: ' http://abc.com:8080/pc/api -d {\\"version\\": \\"1.0\\",\\"user\\": \\"CGW\\",\\"password\\": \\"123\\"}"
}

加工結果

{
"level":"INFO",
"password":"123",
"requestid":"328495eb-b562-478f-9d5d-3bf7e",
"time":"2021-11-24 11:11:08,232",
"user":"CGW",
"version":"1.0"
}

DSL加工関数

ext_regex("content", regex="\\[(\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2},\\d{3})\\]\\[(\\w+-\\w+-\\w+-\\w+-\\w+)\\]\\[([A-Z]{4})\\].*(\\{[^\\}]+\\})", output="time,requestid,level,msg")
ext_json("msg")
fields_drop("content","msg")

DSL加工関数の詳細解説

1. 正規表現キーバリュー抽出関数ext_regexを使用して、時間、リクエスト、ログレベル、メッセージなどの情報を抽出し、関連する内容をtime、requestid、level、msgフィールドに保存します。
ext_regex("content", regex="\\[(\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2},\\d{3})\\]\\[(\\w+-\\w+-\\w+-\\w+-\\w+)\\]\\[([A-Z]{4})\\].*(\\{[^\\}]+\\})", output="time,requestid,level,msg")
2. ext_jsonを使用してmsgフィールドをフラット化します。msgの値は{\\"version\\": \\"1.0\\",\\"user\\": \\"CGW\\",\\"password\\": \\"123\\"}です。
ext_json("msg")
3. contentおよびmsgフィールドを破棄します。
fields_drop("content","msg")





ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック