このドキュメントでは、Logtail 起動設定パラメーターについて説明します。 特別な要件がある場合は、このドキュメントに従って起動パラメーターを設定できます。

シナリオ

次のシナリオでは、Logtail 起動設定パラメーターを設定する必要があります。
  • 各ファイルのメタデータ情報(ファイルの署名、収集場所、ファイル名など)は、メモリに保持する必要があります。
  • そのため、多数のログファイルを収集する場合は、メモリ使用量が大きくなることがあります。
  • ログデータの量が多く、 Log Service 送信されるトラフィックが多いため、CPU 使用率が高くなります。
  • Syslog/TCP データストリームが収集されます。

起動の設定

  • ファイルパス
    /usr/local/ilogtail/ilogtail_config.json
  • ファイル形式

    JSON

  • ファイルサンプル(部分的な設定項目のみを表示)
    {
        ...
        "cpu_usage_limit" : 0.4,
        "mem_usage_limit" : 100,
        "max_bytes_per_sec" : 2097152,
        "process_thread_count" : 1,
        "send_request_concurrency" : 4,
        "buffer_file_num" : 25,
        "buffer_file_size" : 20971520,
        "buffer_file_path" : "",
        ...
    }

一般的な設定パラメーター

パラメーター名 パラメーター説明
cpu_usage_limit CPU 使用率のしきい値。 コアごとに計算されます。

たいていの場合、シングルコア処理能力はシンプルモードでは約24 MB /秒で、では約12 MB /秒です。

Double型。 最小値は0.1で、最大値は現在のマシンのCPUコア数です。 デフォルト値は2です。

たとえば、値 0.4 は、Logtail の CPU 使用率がシングルコア CPU の 40% に制限されていることを示します。 しきい値を超えた場合、Logtail は自動的に再起動します。

mem_usage_limit 常駐メモリの使用しきい値。

1000 を超えるファイルを収集するには、しきい値を適切に増やします。

Int型。 MB で測定されます。 最小値は128で、最大値は現在のマシンの有効メモリ値です。 デフォルト値は2048です。

たとえば、値 100 は、Logtail のメモリ使用量が 100 MB に制限されていることを示します。 しきい値を超えた場合、Logtail は自動的に再起動します。

max_bytes_per_sec Logtail が送信した生データのトラフィック制限は、20MB /秒を超えるストリームには制限されません。

Int型。 バイト/秒で測定されます。 範囲は1024 - 52428800で、デフォルト値は20971520です。

たとえば、値 2097152 は、Logtail のデータ転送速度が 2 MB/秒に制限されていることを示します。

process_thread_count Logtail がログファイルのデータを書き込んだスレッドの数。

通常、シンプルモードでは 24 MB/秒、フルモードでは 12 MB/秒の書き込み速度をサポートします。 デフォルトでは、この値を調整する必要はありませんが、必要に応じてしきい値を増やすことができます。

Int型。 単位:個。 範囲:1~64。デフォルト値は1。
send_request_concurrency 非同期並行処理の数。デフォルトでは、Logtail はデータパケットを非同期で送信します。 書き込み TPS が大きい場合は、より大きな非同期並行性値を設定できます。

Can be supported with a single concurrency of 0.5 Mb/s ~ It is based on the network delay to calculate the throughput of 1 Mb/s network.

単一の並行処理が全体を通して 0.5-1 MB/秒のネットワークをサポートしているという条件に基づいて同時実行数量を計算できます。 実際の並行処理量は、ネットワーク遅延によって異なります。

Int型。 単位:個。 範囲:1~1000、デフォルト値は20です。

buffer_file_num ネットワーク例外が発生するか、または書き込み制限を超えた場合、Logtailは、リアルタイムで解析されたログをキャッシュとして、インストールディレクトリにあるローカルファイルに書き込みます、復帰後にログをLog Serviceに再送します。 このパラメーターは、キャッシュファイルの最大数を制限します。 Int型。 単位:個。 範囲:1~100、デフォルト値は25です。
buffer_file_size キャッシュファイルの最大Byteを設定できます。 buffer_file_num * buffer_file_sizeがキャッシュファイルが使用できる最大のディスク容量です。 Int型。 単位:個。 範囲:1048576 - 104857600、デフォルト値は20971520 Bytes (20 MB)です。
buffer_file_path キャッシュファイルを保存するディレクトリ。 このパラメータ値を変更した後、旧キャッシュディレクトリの logtail\_buffer\_file_*の形式でファイルを手動で新しいキャッシュディレクトリに移動し、ログを送信後 Logtail がキャッシュファイルを読み込んで削除できるようにする必要があります。 デフォルト値は null で、キャッシュファイルが Logtail インストールディレクトリ(/usr/local/ilogtail)に保存されていることを示します。
bind_interface ローカルマシンにバインドされているネットワークカードの名前(eth1 など)(Linux バージョンのみがサポートされています)。 このパラメータはデフォルトで空となります。 利用可能なネットワークカードが自動的にバインドされます。 このパラメータが設定されている場合、Logtail はログをアップロードするためにこのネットワークカードを強制的に使用します。
check_point_filename チェックポイントファイルに保存されているフルパス。Logtail のチェックポイントの保存位置をカスタマイズするために使用されます。

Dockerユーザーがこのファイルストレージアドレスを変更し、チェックポイントファイルが存在するディレクトリをホストにマウントすることを推奨します。 そうしないと、チェックポイント情報がないためにコンテナが解放されたときに重複したコレクションが発生します。 例えば、Docker のcheck_point_filenameを/data/logtail/check_point.datとして設定し、-v /data/docker1/logtail:/data/logtailをDockerスタートアップコマンドに追加して /data/docker1/logtailディレクトリを Docker の/data/logtailディレクトリにコピーします。

デフォルト値は/tmp/logtail_check_pointです。
  • 上記の表には、注意が必要な一般的な起動パラメーターのみが記載されています。 ilogtail_config.json のパラメーターが表にない場合、デフォルト値が適用されます。
  • 必要に応じて設定パラメーターの値を追加または変更します。 未使用の設定パラメーター(syslog データストリームの収集に関連するパラメーターなど)はilogtail_config.jsonに追加する必要はありません。

設定の変更

  1. 必要に応じてilogtail_config.jsonを設定してください。

    変更された設定が有効な JSON 形式であることを確認します。

  2. 変更された設定を適用するには、Logtail を再起動します。
    /etc/init.d/ilogtaild stop
    /etc/init.d/ilogtaild start
    /etc/init.d/ilogtaild status