すべてのプロダクト
Search
ドキュメントセンター

Simple Log Service:Logtail 構成 (レガシ)

最終更新日:Aug 27, 2026

Logtail 構成は、データソースや収集モードなどのログ収集ポリシーを定義します。このトピックでは、レガシ API のパラメーターについて説明します。

レガシ CRD の CRD-AliyunLogConfig はメンテナンスが終了しています。代わりに AliyunPipelineConfig を使用してください。CreateLogtailPipelineConfig - Logtail パイプライン構成の作成。

基本パラメーター

パラメーター

タイプ

必須

例

説明

configName

string

はい

config-sample

Logtail 構成名。プロジェクト内で一意である必要があり、作成後は変更できません。

命名ルール:

  • 小文字、数字、ハイフン (-)、アンダースコア (_) のみ使用できます。

  • 先頭と末尾は小文字または数字である必要があります。

  • 長さは 2~128 文字である必要があります。

inputType

string

はい

file

データソースタイプ。有効な値:

  • plugin:Logtail プラグイン (例:MySQL Binlog) を使用してログを収集します。

  • file:固定モード (完全正規表現、デリミタなど) を使用してテキストファイルからログを収集します。

inputDetail

JSON オブジェクト

はい

なし

データソース構成。詳細については、「inputDetail パラメーター」をご参照ください。

outputType

string

はい

LogService

出力先。Log Service のみがサポートされています。

outputDetail

JSON オブジェクト

はい

なし

ログ出力構成。詳細については、「outputDetail パラメーター」をご参照ください。

logSample

string

いいえ

なし

サンプルログ。

説明

サンプルログの長さは 1,500 バイト未満である必要があります。

inputDetail パラメーター

基本パラメーター

パラメーター

タイプ

必須

例

説明

filterKey

配列

いいえ

["ip"]

ログフィルターフィールド。filterRegex パターンに一致するログのみが収集されます。

説明

このパラメーターはテキストログ収集専用です。

filterRegex

配列

いいえ

["^10.*"]

filterKey の正規表現パターン。filterRegex 配列の長さは filterKey と一致する必要があります。

説明

このパラメーターはテキストログ収集専用です。

shardHashKey

配列

いいえ

["__source__"]

データ書き込みモード。デフォルト:負荷分散。

  • 負荷分散 (LoadBalance) モード:書き込み可能な任意のシャードに書き込みます。順序要件がないシナリオに最適です。

  • シャード (KeyHash) モード:URL パラメーターの Key フィールドに基づいて、データを特定のシャードにルーティングします。設定されていない場合は、負荷分散にフォールバックします。マージおよび分割中にシャード内の厳密な順序を保証します。詳細については、「シャード」をご参照ください。

設定すると、データはシャードモードで書き込まれます。__source__ フィールドがサポートされています。

enableRawLog

boolean

いいえ

false

生ログをアップロードするかどうか。

  • true:生ログをアップロードします。

  • false (デフォルト):生ログをアップロードしません。

sensitive_keys

配列

いいえ

なし

データマスキング構成。詳細については、「sensitive_keys パラメーター」をご参照ください。

mergeType

string

いいえ

topic

集計方法。有効な値:

  • topic (デフォルト):トピックごとに集計します。

  • logstore:Logstore ごとに集計します。

delayAlarmBytes

int

いいえ

209715200

収集遅延のアラートしきい値。デフォルト:209715200 (200 MB)。

adjustTimezone

boolean

いいえ

false

ログのタイムゾーンを調整するかどうか。時刻解析が構成されている場合 (例:timeFormat が設定されている場合) にのみ適用されます。

logTimezone

string

いいえ

GMT+08:00

タイムゾーンオフセット。フォーマット:GMT+HH:MM (東) または GMT-HH:MM (西)。例:UTC+8 の場合は GMT+08:00。

advanced

JSON オブジェクト

いいえ

なし

高度な機能構成。詳細については、「advanced パラメーター」をご参照ください。

sensitive_keys パラメーター

  • パラメーター

    パラメーター

    タイプ

    必須

    例

    説明

    key

    string

    はい

    content

    ログフィールドの名前。

    type

    string

    はい

    const

    データマスキングメソッド。有効な値:

    • const:機密コンテンツを const フィールドの値に置き換えます。

    • md5:機密コンテンツを対応する MD5 ハッシュに置き換えます。

    regex_begin

    string

    はい

    'password':'

    機密コンテンツを特定するための正規表現プレフィックス。RE2 構文を使用します。

    regex_content

    string

    はい

    [^']*

    機密コンテンツの正規表現。RE2 構文を使用します。

    all

    boolean

    はい

    true

    フィールド内のすべての機密コンテンツを置き換えるかどうか。

    • true (推奨):すべての機密コンテンツを置き換えます。

    • false:最初に一致したもののみを置き換えます。

    const

    string

    いいえ

    "********"

    このパラメーターは、type を const に設定した場合に必須です。

  • 設定例

    たとえば、ログの content フィールドの値が [{'account':'1812213231432969','password':'04a23f38'}, {'account':'1812213685634','password':'123a'}] の場合、sensitive_keys を次のように設定することで、password フィールドの値を ******** に置き換えることができます。

    sensitive_keys = [{"all": true,
    "const": "********",
    "regex_content": "[^']*",
    "regex_begin": "'password':'",
    "type": "const",
    "key": "content"}]                    
  • サンプルログ

    [{'account':'1812213231432969','password':'********'}, {'account':'1812213685634','password':'********'}]

advanced パラメーター

パラメーター

タイプ

必須

例

説明

enable_root_path_collection

boolean

いいえ

false

Windows のルートディレクトリ (例:D:\log*) からの収集を許可するかどうか。

  • true:許可します。

  • false (デフォルト):許可しません。

重要
  • グローバルパラメーター。いずれかの Logtail 構成でこれを有効にすると、Logtail が再起動するまで、サーバー上のすべての構成がルートディレクトリから収集できるようになります。

  • この機能は、Windows Logtail 1.0.0.22 以降でのみサポートされています。

exactly_once_concurrency

int

いいえ

1

ExactlyOnce 書き込みを有効にし、ファイルごとの同時送信数を設定します (0~512)。詳細については、「付録:ExactlyOnce 書き込み機能」をご参照ください。

  • 0:ExactlyOnce 書き込み機能を無効にします。

  • その他の値:指定されたファイルごとの同時実行数で ExactlyOnce 書き込みを有効にします。

重要
  • 値が大きいほど、メモリとディスクのオーバーヘッドが増加します。ローカルの書き込みトラフィックに基づいて設定してください。

  • Logtail はローカルでランダム化を実行します。この値が Shard Count より小さくても、書き込みバランシングは保証されます。

  • 構成後の新しいファイルにのみ有効です。

  • この機能は Logtail 1.0.21 以降でのみサポートされています。

enable_log_position_meta

boolean

いいえ

true

ログファイルのメタデータ (__tag__:__inode__ および __file_offset__ フィールド) を追加するかどうか。

  • true:メタデータを追加します。

  • false:メタデータを追加しません。

説明

この機能は Logtail 1.0.21 以降でのみサポートされています。

specified_year

uint

いいえ

0

年が欠落しているログタイムスタンプを補完します。有効な値:

  • 0:現在の年を使用します。

  • 特定の年 (例:2020):指定された年を使用します。

説明

この機能は Logtail 1.0.21 以降でのみサポートされています。

force_multiconfig

boolean

いいえ

false

この構成が、他の構成によってすでに照合されているファイルを収集することを許可するかどうか。デフォルト:false。

ファイルが 2 つの構成によって異なる Logstore に収集されるマルチ書き込みシナリオで使用します。

raw_log_tag

string

いいえ

__raw__

生ログを保存するためのフィールド名。デフォルト:__raw__。

blacklist

object

いいえ

なし

収集ブラックリスト構成。詳細については、「blacklist パラメーター」をご参照ください。

tail_size_kb

int

いいえ

1024

新しいファイルの初期収集サイズで、開始読み取り位置を決定します。デフォルト:1024 KB。

  • 1024 KB 未満のファイル:収集は最初から開始されます。

  • 1024 KB より大きいファイル:収集は末尾から 1024 KB 手前から開始されます。

範囲:0~10485760 KB。

batch_send_interval

int

いいえ

3

集計送信間隔 (秒)。デフォルト:3。

max_rotate_queue_size

int

いいえ

20

単一ファイルのローテーションキューの長さ。デフォルト:20。

enable_precise_timestamp

boolean

いいえ

false

高精度時刻を抽出するかどうか。デフォルト:false。

有効にすると、Logtail は時刻フィールドをミリ秒レベルのタイムスタンプに解析し、precise_timestamp_key フィールドに保存します。

説明
  • Logtail 収集構成でシステム時刻を無効にする必要があります。

  • この機能は Logtail 1.0.32 以降でのみサポートされています。

precise_timestamp_key

string

いいえ

"precise_timestamp"

高精度タイムスタンプを保存するフィールド。デフォルト:precise_timestamp。

precise_timestamp_unit

string

いいえ

"ms"

高精度タイムスタンプの単位。デフォルト:ms。有効な値:ms (ミリ秒)、us (マイクロ秒)、ns (ナノ秒)。

次の表に、blacklist のパラメーターを示します。

パラメーター

タイプ

必須

例

説明

dir_blacklist

配列

いいえ

["/home/admin/dir1", "/home/admin/dir2*"]

ディレクトリブラックリスト (絶対パス)。アスタリスク (*) ワイルドカードをサポートします。

たとえば、パスを /home/admin/dir1 と構成した場合、/home/admin/dir1 ディレクトリ内のすべてのコンテンツは収集中に無視されます。

filename_blacklist

配列

いいえ

["app*.log", "password"]

ファイル名ブラックリスト。一致したファイルはすべてのディレクトリから除外されます。アスタリスク (*) ワイルドカードをサポートします。

filepath_blacklist

配列

いいえ

["/home/admin/private*.log"]

ファイルパスブラックリスト (絶対パス)。アスタリスク (*) ワイルドカードをサポートします。

パスを /home/admin/private*.log と構成した場合、/home/admin/ ディレクトリ内の "private" で始まり ".log" で終わるすべてのファイルは収集中に無視されます。

テキストログ固有の構成

基本パラメーター

パラメーター

タイプ

必須

例

説明

logType

string

はい

common_reg_log

ログ収集モード。有効な値:

  • json_log:JSON モード。

  • common_reg_log:完全正規表現モード。

  • plugin:プラグインモード。

  • delimiter_log:デリミタモード。

logPath

string

はい

/var/log/http/

ログファイルのディレクトリパス。

filePattern

string

はい

access*.log

ログファイル名パターン。

topicFormat

string

はい

none

トピック生成方法。有効な値:

  • none:ログトピックを生成しません。

  • default:ログファイルパスをログトピックとして使用します。

  • group_topic:マシングループトピックをログトピックとして使用します。

  • ファイルパス正規表現:ログファイルパスの一部をトピックとして使用します。例:/var/log/(.*).log。

ログトピック。

timeFormat

string

いいえ

%Y/%m/%d %H:%M:%S

ログ時刻フォーマット。詳細については、「時刻フォーマット」をご参照ください。

preserve

boolean

いいえ

true

ログファイルのタイムアウト動作。有効な値:

  • true (デフォルト):タイムアウトしません。

  • false:30 分間非アクティブな状態が続くとタイムアウトします。ファイルは監視されなくなります。

preserveDepth

integer

いいえ

1

preserve が false の場合のタイムアウト時の最大ディレクトリ深度。範囲:1~3。

fileEncoding

string

いいえ

utf8

ログファイルエンコーディング。有効な値:utf8、gbk。

discardUnmatch

boolean

いいえ

true

照合に失敗したログを破棄するかどうか。有効な値:

  • true:照合に失敗したログを破棄します。

  • false:照合に失敗したログを破棄しません。

maxDepth

int

いいえ

100

監視対象のログディレクトリの最大深度 (0~1,000)。値 0 は現在のディレクトリのみを監視します。

delaySkipBytes

int

いいえ

0

遅延データを破棄するしきい値。有効な値:

  • 0 (デフォルト):データを破棄しません。

  • その他の値:収集遅延がこの値 (例:1024 KB) を超えた場合、遅延データは破棄されます。

dockerFile

boolean

いいえ

false

対象ファイルがコンテナ内にあるかどうか。デフォルト:false。

dockerIncludeLabel

JSON オブジェクト

いいえ

なし

コンテナラベルのホワイトリスト。デフォルトでは空 (すべてのコンテナから収集)。LabelKey は必須、LabelValue はオプションです。

  • LabelValue が空の場合、LabelKey を含むラベルを持つすべてのコンテナが照合されます。

  • LabelValue が空でない場合、LabelKey=LabelValue のラベルを持つコンテナのみが照合されます。

    デフォルトでは、LabelValue は文字列として照合されます。LabelValue がコンテナラベルの値と同一である場合にのみ一致します。値が ^ で始まり $ で終わる場合、正規表現として扱われます。たとえば、LabelKey を io.kubernetes.container.name に、LabelValue を ^(nginx|cube)$ に設定すると、nginx または cube という名前のコンテナに一致します。

説明
  • 同じ LabelKey を複数回設定しないでください。重複がある場合、1 つだけが有効になります。

  • 複数のホワイトリストエントリは OR 関係にあります。コンテナのラベルがホワイトリストエントリのいずれかを満たす場合、そのコンテナは照合されます。

dockerExcludeLabel

JSON オブジェクト

いいえ

なし

コンテナラベルのブラックリスト。デフォルトでは空 (除外されるコンテナなし)。LabelKey は必須、LabelValue はオプションです。

  • LabelValue が空の場合、LabelKey を含むラベルを持つすべてのコンテナが除外されます。

  • LabelValue が空でない場合、LabelKey=LabelValue のラベルを持つコンテナのみが除外されます。

    デフォルトでは、LabelValue は文字列として照合されます。LabelValue がコンテナラベルの値と同一である場合にのみ一致します。値が ^ で始まり $ で終わる場合、正規表現として扱われます。たとえば、LabelKey を io.kubernetes.container.name に、LabelValue を ^(nginx|cube)$ に設定すると、nginx または cube という名前のコンテナに一致します。

説明
  • 同じ LabelKey を複数回設定しないでください。重複がある場合、1 つだけが有効になります。

  • 複数のブラックリストエントリは OR 関係にあります。コンテナのラベルがブラックリストのキーと値のペアのいずれかを満たす場合、そのコンテナは除外されます。

dockerIncludeEnv

JSON オブジェクト

いいえ

なし

環境変数ホワイトリスト。デフォルトでは空 (すべてのコンテナから収集)。EnvKey は必須、EnvValue はオプションです。

  • EnvValue が空の場合、EnvKey を含む環境変数を持つすべてのコンテナが照合されます。

  • EnvValue が空でない場合、EnvKey=EnvValue の環境変数を持つコンテナのみが照合されます。

    デフォルトでは、EnvValue は文字列として照合されます。EnvValue が環境変数の値と同一である場合にのみ一致します。値が ^ で始まり $ で終わる場合、正規表現として扱われます。たとえば、EnvKey を NGINX_SERVICE_PORT に、EnvValue を ^(80|6379)$ に設定すると、サービスポートが 80 または 6379 のコンテナに一致します。

説明

複数のホワイトリストエントリは OR 関係にあります。コンテナの環境変数がホワイトリストエントリのいずれかを満たす場合、そのコンテナは照合されます。

dockerExcludeEnv

JSON オブジェクト

いいえ

なし

環境変数ブラックリスト。デフォルトでは空 (除外されるコンテナなし)。EnvKey は必須、EnvValue はオプションです。

  • EnvValue が空の場合、EnvKey を含む環境変数を持つすべてのコンテナが除外されます。

  • EnvValue が空でない場合、EnvKey=EnvValue の環境変数を持つコンテナのみが除外されます。

    デフォルトでは、EnvValue は文字列として照合されます。EnvValue が環境変数の値と同一である場合にのみ一致します。値が ^ で始まり $ で終わる場合、正規表現として扱われます。たとえば、EnvKey を NGINX_SERVICE_PORT に、EnvValue を ^(80|6379)$ に設定すると、サービスポートが 80 または 6379 のコンテナに一致します。

説明

複数のブラックリストエントリは OR 関係にあります。コンテナの環境変数がキーと値のペアのいずれかを満たす場合、そのコンテナは除外されます。

完全正規表現モードとシンプルモードのパラメーター

  • パラメーター

    パラメーター

    タイプ

    必須

    例

    説明

    key

    配列

    はい

    ["content"]

    生ログコンテンツのフィールド名。

    logBeginRegex

    string

    いいえ

    .*

    ログエントリの開始を示す正規表現。単一の正規表現のみがサポートされています。複数の行頭フォーマットに一致させるには、縦棒 (|) 演算子を使用してパターンを 1 つの正規表現に結合します。

    regex

    string

    いいえ

    (.*)

    フィールド抽出のための正規表現。

  • 設定例

    {
        "configName": "logConfigName", 
        "outputType": "LogService", 
        "inputType": "file", 
        "inputDetail": {
            "logPath": "/logPath", 
            "filePattern": "*", 
            "logType": "common_reg_log", 
            "topicFormat": "default", 
            "discardUnmatch": false, 
            "enableRawLog": true, 
            "fileEncoding": "utf8", 
            "maxDepth": 10, 
            "key": [
                "content"
            ], 
            "logBeginRegex": ".*", 
            "regex": "(.*)"
        }, 
        "outputDetail": {
            "projectName": "test-project", 
            "logstoreName": "test-logstore"
        }
    }

JSON モードのパラメーター

パラメーター

タイプ

必須

例

説明

timeKey

string

いいえ

time

時刻フィールドのキー名。

デリミタモードのパラメーター

  • パラメーター

    パラメーター

    タイプ

    必須

    例

    説明

    separator

    string

    いいえ

    ,

    ログフォーマットに一致する区切り文字を選択します。詳細については、「デリミタモードでログを収集する」をご参照ください。

    quote

    string

    はい

    \

    区切り文字を含むフィールドを囲むための引用符。囲まれたコンテンツは 1 つのフィールドとして解析されます。詳細については、「デリミタモードでログを収集する」をご参照ください。

    key

    配列

    はい

    [ "ip", "time"]

    生ログコンテンツのフィールド名。

    timeKey

    string

    はい

    time

    key リストから時刻フィールドとして使用するフィールド。

    autoExtend

    boolean

    いいえ

    true

    分割されたフィールドが構成されたキーより少ない場合にアップロードするかどうか。

    たとえば、ログが 11|22|33|44|55 で、区切り文字が縦棒 (|) の場合、ログコンテンツは 11、22、33、44、55 に解析されます。キーはそれぞれ A、B、C、D、E に設定されます。

    • true:ログ 11|22|33|55 を収集する場合、55 はキー D の値として Simple Log Service にアップロードされます。

    • false:ログ 11|22|33|55 を収集する場合、フィールド数がキーの数と一致しないため、このログエントリは破棄されます。

  • 設定例

    {
        "configName": "logConfigName", 
        "logSample": "testlog", 
        "inputType": "file", 
        "outputType": "LogService", 
        "inputDetail": {
            "logPath": "/logPath", 
            "filePattern": "*", 
            "logType": "delimiter_log", 
            "topicFormat": "default", 
            "discardUnmatch": true, 
            "enableRawLog": true, 
            "fileEncoding": "utf8", 
            "maxDepth": 999, 
            "separator": ",", 
            "quote": "\"", 
            "key": [
                "ip", 
                "time"
            ], 
            "autoExtend": true
        }, 
        "outputDetail": {
            "projectName": "test-project", 
            "logstoreName": "test-logstore"
        }
    }

プラグインモードのパラメーター

  • パラメーター

    Logtail プラグインのログ収集に関するパラメーター。

    パラメーター

    タイプ

    必須

    例

    説明

    plugin

    JSON オブジェクト

    はい

    なし

    プラグインベースのログ収集に必須です。詳細については、「Logtail プラグインを使用してデータを収集する」をご参照ください。

  • 設定例

    {
        "configName": "logConfigName", 
        "outputType": "LogService", 
        "inputType": "plugin",
        "inputDetail": {
            "plugin": {
                "inputs": [
                    {
                        "detail": {
                            "ExcludeEnv": null, 
                            "ExcludeLabel": null, 
                            "IncludeEnv": null, 
                            "IncludeLabel": null, 
                            "Stderr": true, 
                            "Stdout": true
                        }, 
                        "type": "service_docker_stdout"
                    }
                ]
            }
        }, 
        "outputDetail": {
            "projectName": "test-project", 
            "logstoreName": "test-logstore"
        }
    }

outputDetail パラメーター

送信先のプロジェクトと Logstore のパラメーター。

パラメーター

タイプ

必須

例

説明

projectName

string

はい

my-project

プロジェクト名。リクエスト内のプロジェクトと一致する必要があります。

logstoreName

string

はい

my-logstore

Logstore 名。

付録:ExactlyOnce 書き込み機能

有効にすると、Logtail はファイルレベルのチェックポイントをディスクに記録し、SLS の増分シーケンス番号を使用して重複書き込みを防ぎます。プロセスのエラーや再起動後、チェックポイントはファイルごとの再処理範囲を決定します。これにより、ディスク書き込みのオーバーヘッドが増加します。使用制限:

  • チェックポイントはローカルディスクに保存されます。ディスクが満杯または破損している場合、回復が失敗する可能性があります。

  • チェックポイントはファイルメタデータのみを記録します。ファイルが削除または変更された場合、回復できない可能性があります。

  • ExactlyOnce は SLS の書き込みシーケンス番号に依存します。各シャードは最大 10,000 レコードをサポートします。これを超えると、古いレコードが置き換えられます。信頼性を確保するため、Logstore ごとの `アクティブなファイル数 × Logtail インスタンス数` を 9,500 未満に保ってください。

    • アクティブなファイル:読み取りおよび送信中のファイル。同じ論理名を持つローテーションされたファイルは、1 つのアクティブなファイルとしてカウントされます。

    • Logtail インスタンス:Logtail プロセスの数。通常、サーバーごとに 1 つです。

Logtail はデフォルトでチェックポイント書き込みに `sync` を呼び出しません。バッファリングされたデータがディスクに到達する前にサーバーが再起動すると、チェックポイントが失われる可能性があります。同期書き込みを有効にするには、Logtail の起動設定ファイル (/usr/local/ilogtail/ilogtail_config.json) に "enable_checkpoint_sync_write": true, を追加します。詳細については、「Logtail 起動パラメーターの設定」をご参照ください。