デフォルトでは、1 つのファイルは 1 つの Logtail 構成にしか一致しません。 データ変換またはシンボリックリンクを使用して、同じファイルを複数の宛先に収集します。
背景
複数の Logtail 構成が同じファイルに一致する場合、Logtail は余分な CPU、メモリ、ディスク I/O、およびネットワーク I/O リソースを消費し、サーバー上の他のサービスのパフォーマンスを低下させます。 このため、デフォルトでは、1 つのファイルは 1 つの Logtail 構成にしか一致しません。
ソリューション
異なる Logstore へのログデータの保存
複数の Logtail 構成を作成する代わりに、SLS のデータ変換機能を使用してLogstore からデータを複製します。 これにより、ホストでの余分なリソース消費を回避できます。
複数の Logtail 構成の作成
ホストシナリオ
-
Create a symbolic link to the directory
Create a symbolic link to the log file directory. Use the original path in one Logtail configuration and the symlink path in the other. For example, create a symlink named
/home/log/nginx/link_logfor/home/log/nginx/log.ln -s /home/log/nginx/log /home/log/nginx/link_log -
Enable forced collection
In the Input Configurations section, enable the [Allow File to Be Collected for Multiple Times] toggle. Collect text logs from servers and Manually install Logtail to collect text logs from servers.
コンテナシナリオ
コンテナのログ収集では、2 つのアプローチを利用できます:DaemonSet モードで ACK クラスターからテキストログを収集する、およびコンソールを使用してクラスターからコンテナログ (標準出力およびファイル) を収集する。
-
コンソール
[Input Configurations] セクションで、 [Allow File to Be Collected for Multiple Times] トグルを有効にします。
-
カスタムリソース定義 (CRD)
複数の CRD を定義します。