ネイティブまたは拡張の時間処理プラグインを使用して、ログのタイムスタンプを解析、抽出、標準化します。
プラグイン効果の例
Simple Log Service (SLS) において、時間解析プラグイン (ネイティブ) の有無による生ログデータを比較します。
生ログ | プラグインなし | 時間解析プラグイン (ネイティブ) |
秒精度のタイムスタンプ: | コンテンツ: "{"level":"INFO","timestamp":"2025-09-29T09:56:01+0800","cluster":"yilu-cluster-0728","message":"User logged in successfully","userId":"user-123"}" |
|
ミリ秒精度のタイムスタンプ: | コンテンツ: "{"time": "2026-01-05T11:58:40,647Z", "filename": "out_data.py", "levelname": "INFO", "threadName": "MainThread"}" "filename":"out_data.py","levelname": "INFO", "threadName":"MainThread"}" |
|
ナノ秒精度のタイムスタンプ: | コンテンツ: "{"time": "2026-01-05T11:40:22,298837465Z07:00", "filename": "out_data.py", "levelname": "INFO", "threadName": "MainThread"}" |
|
時間処理プラグイン
SLS では、以下の時間処理プラグインを提供しています。
名前 | タイプ | 説明 |
時間解析 | ネイティブ | ログ内の時間フィールドを解析し、標準化します。 |
ログ時間抽出 | 拡張 | 生の時間フィールドを解析し、ログタイムスタンプとして設定します。 |
エントリーポイント
Logtailプラグインを使用してログを処理する場合は、Logtail設定を作成または変更するときにLogtailプラグイン設定を追加できます。 詳細については、「概要」をご参照ください。
ネイティブプラグインと拡張プラグインの違い
ネイティブプラグイン: C++ で実装されており、高いパフォーマンスを実現します。
拡張プラグイン: Go で実装されており、より豊富で柔軟なエコシステムを提供します。ネイティブプラグインでログ形式を処理できない場合は、拡張プラグインを使用してください。
拡張プラグインのパフォーマンス制限
ログ収集の制限
拡張プラグインは、行モードでテキストログを処理します。つまり、
__tag__:__path__や__topic__などのファイルレベルのメタデータは、各ログエントリに保存されます。拡張プラグインを追加すると、タグ関連の機能に影響が出ます:
aggregators 設定を追加しない限り、コンテキストクエリと LiveTail が使用できなくなります。
__topic__フィールドは__log_topic__に名前が変更されます。aggregators 設定を追加すると、ログには__topic__と__log_topic__の両方のフィールドが含まれます。__log_topic__フィールドが不要な場合は、フィールドドロッププラグインを使用して削除できます。__tag__:__path__などのフィールドは、ネイティブフィールドインデックスが無効になります。これらのフィールドに対して インデックスを作成 する必要があります。
時間解析プラグイン (ネイティブ)
ログの時間フィールドを解析し、その結果を__time__ フィールドに割り当てます。
構成
パラメーター | 説明 |
[元のフィールド] | 解析対象のログコンテンツを含むフィールドです。デフォルト値は 説明 正規表現解析プラグインを使用する場合は、[ソースフィールド] を |
[時間形式] | ログ内のタイムスタンプのフォーマットです。例えば、タイムスタンプが |
[タイムゾーン] | ログ内のタイムスタンプのタイムゾーンです。空の場合、プラグインは Logtail が実行されているマシンのタイムゾーンを使用します。 |
デフォルトでは、Simple Log Service は秒精度のタイムスタンプを処理します。 時間形式を秒まで設定するだけで、ミリ秒やマイクロ秒などのより小さい単位は省略できます。 ミリ秒、マイクロ秒、またはナノ秒の精度を維持するには、以下に示すようにナノ秒精度を有効にします。 ナノ秒タイムスタンプをサポートするログ収集。
生ログ | 時間解析プラグインの設定 | 時刻フォーマット |
| [プロセッシングプラグイン] 設定ダイアログで、[プロセッシングプラグインタイプ] を [時間解析] に設定し、[ソースフィールド] を | %Y-%m-%dT%H:%M:%S,%f%z |
ナノ秒精度を有効にするには、次の手順に従います。
Logtail 設定ページで、 に移動し、[高度なパラメーター] を有効にして、次のように入力します。
{
"EnableTimestampNanosecond": true
}拡張プラグインを使用してナノ秒またはミリ秒精度のタイムスタンプを解析する場合も、EnableTimestampNanosecond を有効にしてください。ログ時刻抽出プラグイン
processor_gotime または processor_strptime を使用して、生ログの時刻フィールドを解析します。
秒未満の精度を維持する方法については、「ナノ秒タイムスタンプをサポートするログ収集」をご参照ください。
Go 時刻フォーマット (processor_gotime)
strptime 時刻フォーマット (processor_strptime)
ログの時間フォーマット
processor_gotime の時間フォーマットについては、「Go time パッケージの定数」をご参照ください。 processor_parse_timestamp_native ネイティブプラグインと processor_strptime 拡張プラグインは、以下に示すフォーマットをサポートしています。
Linux サーバーでは、Logtail は strftime 関数によって提供されるすべての時間フォーマットをサポートしています。
フォーマット | 説明 | 例 |
%a | 省略された曜日名。 | Fri |
%A | 完全な曜日名。 | Friday |
%b | 省略された月名。 | Jan |
%B | 完全な月名。 | January |
%d | 月の日をゼロ埋めされた 10 進数 (01-31) で表します。 | 07, 31 |
%f | 小数秒 (ミリ秒、マイクロ秒、ナノ秒など)。 | 123 |
%h | 省略された月名。 %b と同じです。 | Jan |
%H | 時 (24 時間制) をゼロ埋めされた 10 進数 (00-23) で表します。 | 22 |
%I | 時 (12 時間制) をゼロ埋めされた 10 進数 (01-12) で表します。 | 11 |
%m | 月をゼロ埋めされた 10 進数 (01-12) で表します。 | 08 |
%M | 分をゼロ埋めされた 10 進数 (00-59) で表します。 | 59 |
%n | 改行。 | 改行 |
%p | AM または PM。 | AM, PM |
%r | 12 時間形式の時刻。 %I:%M:%S %p と同じです。 | 11:59:59 AM |
%R | 24 時間形式の時と分。 %H:%M と同じです。 | 23:59 |
%S | 秒をゼロ埋めされた 10 進数 (00-59) で表します。 | 59 |
%t | タブ文字。 | なし |
%y | 世紀を含まない年をゼロ埋めされた 10 進数 (00-99) で表します。 | 04, 98 |
%Y | 世紀を含む年を 10 進数で表します。 | 2004, 1998 |
%C | 世紀を 10 進数 (00-99) で表します。 | 16 |
%e | 月の日をスペースで埋められた 10 進数 (1-31) で表します。 | 7, 31 |
%j | 年の通し日をゼロ埋めされた 10 進数 (001-366) で表します。 | 365 |
%u | 曜日を10進数 (1-7) で表します。月曜日が1です。 | 2 |
%U | 年における週番号 (00-53) です。日曜日を週の始まりとします。 | 23 |
%V | ISO 8601 週番号 (01-53) です。月曜日を週の始まりとします。 週 1 は、少なくとも 4 日間を含む年の最初の週です。 | 24 |
%w | 曜日を10進数 (0-6) で表します。日曜日が0です。 | 5 |
%W | 年における週番号 (00-53) です。月曜日を週の始まりとします。 | 23 |
%c | ロケール固有の日付と時刻の表現。 | Tue Nov 20 14:12:58 2020 |
%x | ロケール固有の日付表現。 | Tue Nov 20 2020 |
%X | ロケール固有の時刻表現。 | 11:59:59 |
%s | UNIX タイムスタンプ。 | 1476187251 |
例
一般的な時刻標準とそれに対応する式は次のとおりです:
例 | 式 | 標準 |
2017-12-11 15:05:07 | %Y-%m-%d %H:%M:%S | Custom |
[2017-12-11 15:05:07.012] | [%Y-%m-%d %H:%M:%S.%f] | Custom |
2017-12-11 15:05:07.123 | %Y-%m-%d %H:%M:%S.%f | Custom |
02 Jan 06 15:04 MST | %d %b %y %H:%M %Z | RFC822 |
02 Jan 06 15:04 -0700 | %d %b %y %H:%M %z | RFC822Z |
Monday, 02-Jan-06 15:04:05 MST | %A, %d-%b-%y %H:%M:%S %Z | RFC850 |
Mon, 02 Jan 2006 15:04:05 MST | %a, %d %b %Y %H:%M:%S %Z | RFC1123 |
2006-01-02T15:04:05Z07:00 | %Y-%m-%dT%H:%M:%S%z | RFC3339 |
2006-01-02T15:04:05.999999999Z07:00 | %Y-%m-%dT%H:%M:%S.%f%z | RFC3339Nano |
1637843406 | %s | Custom |
1637843406123 | %s | カスタム (Simple Log Service は、タイムスタンプを秒単位に切り捨てます) |


