Logtailは、Simple log Serviceによって提供されるログ収集エージェントです。 Logtailを使用すると、Alibaba Cloud ECS (Elastic Compute Service) インスタンス、データセンター内のサーバー、サードパーティのクラウドサービスプロバイダーのサーバーなど、複数のデータソースからログを収集できます。 このトピックでは、Logtailの機能、利点、制限、および設定プロセスについて説明します。
設定プロセス
サーバーにLogtailをインストールします。
ECSインスタンスにLogtailをインストールする方法の詳細については、「ECSインスタンスにLogtailをインストールする」をご参照ください。
LinuxサーバーにLogtailをインストールする方法の詳細については、「LinuxサーバーにLogtailをインストールする」をご参照ください。
WindowsサーバーにLogtailをインストールする方法の詳細については、「WindowsサーバーにLogtailをインストールする」をご参照ください。
サーバーのユーザー識別子を設定します。 この操作は、サーバーが別のAlibaba Cloudアカウントに属するECSインスタンス、データセンター内のサーバー、またはサードパーティのクラウドサービスプロバイダーのサーバーである場合に必要です。
詳細については、「ユーザー識別子の設定」をご参照ください。
マシングループを作成します。
IPアドレスベースのマシングループを作成する方法の詳細については、「IPアドレスベースのマシングループの作成」をご参照ください。
カスタム識別子ベースのマシングループを作成する方法の詳細については、「カスタム識別子ベースのマシングループの作成」をご参照ください。
Logtail設定を作成し、マシングループにLogtail設定を適用します。
上記の操作は、Simple Log Serviceコンソールで実行できます。 詳細については、「テキストログの収集」および「コンテナログの収集」をご参照ください。
上記の操作を実行すると、Logtailはサーバーからログを収集し、指定されたLogstoreに送信します。 Simple Log Serviceのコンソール、API、SDK、またはCLIを使用してログを照会できます。
メリット
ログファイルに基づく非侵入型ログ収集をサポートします。 アプリケーションコードを変更する必要はなく、ログ収集はアプリケーションの動作に影響を与えません。
テキストログ、バイナリログ、HTTPログ、コンテナログを収集します。
標準コンテナおよびKubernetesクラスターなどのさまざまなコンテナクラスターからログを収集します。
Container Service For Kubernetes (ACK) クラスターからログを収集する方法の詳細については、「Kubernetesコンテナーログの収集」をご参照ください。
自己構築Kubernetesクラスターからログを収集する方法の詳細については、「Kubernetesコンテナーログの収集」をご参照ください。
ユーザーが作成したDockerクラスターからログを収集する方法の詳細については、「標準Dockerコンテナーからログを収集する」をご参照ください。
ログ収集プロセスで発生した例外を処理します。 ネットワークやサーバーの例外などの問題が発生した場合、Logtailはログ収集を再試行し、データをローカルにキャッシュしてデータのセキュリティを確保します。
Simple Log Serviceに基づく集中管理を提供します。 ログを収集するサーバーにLogtailをインストールし、マシングループとLogtail設定を作成した後、Logtailはサーバーからログを収集します。
包括的な自己防衛メカニズムを提供します。 LogtailがLogtailと同じサーバー上で実行される他のサービスのパフォーマンスに大きな影響を与えないようにするため、Simple Log ServiceはLogtailが使用できるCPU、メモリ、およびネットワークリソースを制限し、自己保護メカニズムを提供します。
処理能力と制限
詳細は、「Logtailの制限」をご参照ください。
用語
マシングループ: マシングループには、特定の種類のログが収集される1つ以上のサーバーが含まれます。 マシングループにLogtail設定を適用すると、Simple Log ServiceはLogtail設定に基づいてマシングループ内のすべてのサーバーからログを収集します。
Simple Log Serviceは、マシングループを使用して、Logtailを使用してログを収集するすべてのサーバーを管理します。 IPアドレスまたはカスタム識別子に基づいてマシングループを定義できます。 Simple Log Serviceコンソールでマシングループを管理できます。 たとえば、マシングループを作成または削除したり、マシングループにサーバーを追加したり、マシングループからサーバーを削除したりできます。 詳細については、「概要」をご参照ください。
Logtail: Logtailは、Simple log Serviceによって提供されるログ収集エージェントです。 Logtailは、ログを収集するサーバーで実行されます。
Linux: Linuxでは、Logtailは /usr/local/ilogtailディレクトリにインストールされ、名前がilogtailで始まる2つの独立したプロセスを開始します。 1つは収集プロセスであり、もう1つはデーモンです。 プログラムの操作ログは、/usr/local/ilogtail/ilogtail.LOGファイルに保存されます。 詳細については、「LinuxサーバーへのLogtailのインストール」をご参照ください。
Windows:
Logtail (32ビット)
32ビットWindowsでは、LogtailはC:\Program Files\Alibaba\Logtailディレクトリにインストールされます。
64ビットWindowsでは、LogtailはC:\Program Files (x86)\Alibaba\Logtailディレクトリにインストールされます。
説明64ビットWindowsで32ビットおよび64ビットアプリケーションを実行できます。 互換性を確保するために、オペレーティングシステムは32ビットアプリケーションを別のx86ディレクトリに保存します。
Logtail (64ビット)
Logtail (64ビット) は64ビットWindowsでのみインストールできます。 インストールディレクトリはC:\Program Files\Alibaba\Logtailです。
Logtailのステータスを確認するには、
を選択します。 Logtail V1.0.0.0以降をインストールする場合は、LogtailDaemonサービスを表示します。 Logtail V0.x.x.xをインストールする場合は、LogtailWorkerサービスを表示します。 プログラムの操作ログは、インストールディレクトリのilogtail.LOG
ファイルに格納されます。 詳細については、「WindowsサーバーへのLogtailのインストール」をご参照ください。
Logtail設定: Logtail設定は、Logtailがログを収集するために使用する一連のポリシーです。 データソースと収集モードを指定して、ログ収集用のカスタムLogtail設定を作成できます。 Logtail設定は、サーバーから特定の種類のログを収集し、収集したログを解析し、Simple Log Serviceの指定されたLogstoreにログを送信するために使用されます。
特徴
機能 | 説明 |
リアルタイムログ収集 | Logtailはログファイルを動的に監視し、増分ログをリアルタイムで読み取り、解析します。 ほとんどの場合、ログは生成後3秒以内にSimple Log Serviceに送信されます。 詳細については、「Logtailのログ収集プロセス」をご参照ください。 説明 Logtailは履歴ログを収集しません。 ログが生成されてから12時間後に読み取られたログは破棄されます。 履歴ログファイルからログを収集する方法の詳細については、「ログファイルから履歴ログをインポートする」をご参照ください。 |
自動ログ回転 | 複数のアプリケーションは、ファイルサイズまたは日付に基づいてログファイルを回転します。 ローテーションプロセスでは、元のログファイルの名前が変更され、新しい空のログファイルが作成されます。 たとえば、ログローテーション後にapp.LOGファイルに対してapp.LOG.1やapp.LOG.2などのファイルが生成されます。 収集したログを書き込むファイルを指定できます。 例: app.LOG Logtailはログローテーションプロセスを自動的に監視し、このプロセス中にログが失われないようにします。 |
複数のデータソースのサポート | Logtailは、テキストログ、syslog、HTTPログ、MySQLバイナリログを収集できます。 詳細については、「データ収集の概要」をご参照ください。 |
オープンソースの収集エージェントとの互换性 | Logtailは、LogstashやBeats to Simple Log Serviceなどのオープンソースソフトウェアを使用して収集されたデータを収集できます。 詳細については、「データ収集の概要」をご参照ください。 |
コレクション例外の自動処理 | Simple Log Serviceエラー、ネットワークエラー、クォータの枯渇などの例外によりデータ送信が失敗した場合、Logtailは特定のシナリオに基づいてログ収集をアクティブに再試行します。 再試行が失敗した場合、Logtailはデータをローカルキャッシュに書き込み、3秒後にデータを再度送信します。 詳細については、「」をご参照ください。Logtailの自動診断ツールを使用するにはどうすればよいですか? |
柔軟な収集設定 | Logtail設定に基づいて、柔軟な方法でログを収集できます。 ログを収集するディレクトリとファイルを指定できます。 完全一致とワイルドカード一致がサポートされています。 ログ収集モードと抽出するフィールドを指定できます。 正規表現を使用してログを抽出できます。 Simple log Serviceのログデータモデルでは、各ログに正確なタイムスタンプが必要です。 Logtailは、さまざまな形式のログデータから必要なタイムスタンプ情報を抽出できるカスタムログ時間形式をサポートしています。 |
Logtail設定の自動同期 | Simple Log ServiceコンソールでLogtail設定を作成または更新した後、ほとんどの場合、Logtailは3分以内に設定を自動的に受信して適用します。 Logtailの更新プロセス中にログが失われることはありません。 |
ステータスモニタリング | Logtailは、CPUとメモリの消費量をリアルタイムで監視します。 これにより、Logtailが過剰なリソースを消費するのを防ぎます。 リソースの過剰消費は、Logtailと同じサーバー上で実行される他のサービスに影響を与える可能性があります。 Logtailのリソース使用量が制限を超えると、Logtailは自動的に再起動します。 ネットワーク帯域幅使用量が制限を超えると、Logtailはスロットリングをトリガーします。 詳細については、「スタートアップ設定ファイル (ilogtail_config.json) 」をご参照ください。 |
署名されたデータの送信 | データ送信中にデータが改ざんされるのを防ぐため、Logtailは信頼できるチャネルを介してSimple Log Serviceからプライベートトークンを取得し、送信されたすべてのログデータパケットに署名します。 説明 LogtailはHTTPS経由でプライベートトークンを取得し、トークンのセキュリティを確保します。 |
データ収集の信頼性
データ収集中、Logtailは収集したチェックポイント情報を定期的にローカルサーバーに保存します。 サーバーの予期しないシャットダウンなどの例外が発生した場合、またはプロセスが予期せず終了した場合、Logtailは再起動後に最後に記録されたチェックポイントからデータを収集します。 これにより、データの損失を防ぎます。 Logtailは、起動設定ファイルで指定された起動パラメーターに基づいて実行されます。 Logtailのリソース使用量が5分を超えた場合、Logtailは強制的に再起動されます。 再起動後に重複データが収集される場合があります。
Logtailは内部メカニズムを使用してログ収集の信頼性を向上させます。 ただし、次の状況ではログが失われる可能性があります。
Logtailは実行されていませんが、ログファイルは複数回ローテーションされています。
ログファイルの回転速度は、1秒あたり1回転など、非常に高いです。
ログ収集率は、長期間のログ生成率よりも低い。