概要

最終更新日: Dec 12, 2017

Logtail アクセスサービスは、サーバーからのログの迅速な取得を容易にします。

Logtail 設定プロセス

process

ログサービスコンソールを使用すると、Logtail に簡単にアクセスできます。

  1. Logtail をインストールします。ログを収集する必要のあるサーバに Logtail をインストールしてください。詳しくは、WindowsにLogtailをインストールLinuxにLogtailをインストール を参照してください。

  2. Alibaba 以外のクラウド ECS のユーザ ID の設定 を行います。ECS からログを収集する場合は、この手順を実行する必要はありません。

  3. Logtail マシングループを作成します。ログサービスマシングループを使用して Logtail を介してログを収集する必要があるすべてのサーバーを管理します。ログサービスは、IP とユーザー ID を使用してマシングループを定義することをサポートします。マシングループに logtail config を適用すると、ヒントを持つマシングループを作成することもできます。

  4. Logtail マシングループを作成し、Logtail マシングループに Logtail 構成を適用します。Logtail の設定をテキストファイルの収集 または syslogデータの収集 に作成し、logtail config をマシングループに適用することができます。

前のプロセスが完了すると、ECS サーバ上の特定のタイプのログが収集され、選択されたログストアに送信されます。(履歴ログは収集されません。詳細については、基本機能 を参照してください。)収集したログは、ログサービスコンソールまたはSDKおよびAPIを介して表示できます。収集が正常であるかエラーが発生しているかを確認するには、ログサービスコンソールにログインし、各ECSサーバーでLogtail収集ステータスを表示します。

コンソールでの操作の詳細については、Logtailを用いたテキストファイルの収集を参照してください。

Docker

  • Alibabaクラウドコンテナサービス
  • ECS/IDC自己構築型Docker(コンテナ内のログディレクトリはホストマシンにマウントする必要があります)
    1. Logtail for Windowsのインストール または Logtail for Linuxのインストール
    2. コンテナー内のログ・ディレクトリーをホスト・マシン上のディレクトリーにマウントします。
      • 方法1:次のコマンドを使用します(例えば、ホストマシン上のディレクトリは /log/webapp、コンテナ内のディレクトリは/opt/webapp/logです)。
        1. docker run -d -P --name web -v /src/webapp:/opt/webapp training/webapp python app.py
      • 方法2:オーケストレーションテンプレートを使用します。

コアのコンセプト

  • マシングループ:マシングループには、特定のタイプのログが収集される1つ以上のマシンが含まれます。一連のLogtail設定がマシングループに適用されると、Logtailは、同じLogtail設定に従って、マシングループ内のすべてのマシン上の指定されたタイプのログを収集します。マシン・グループを作成および削除したり、ログ・サービス・コンソールを使用してマシン・グループ内のマシンを追加または削除することができます。1つのマシングループにWindowsマシンとLinuxマシンの両方を含めることはできませんが、異なるWindows Serverバージョンまたは異なるLinuxリリースのマシンを含めることは可能です。

  • Logtail エージェント:Logtail はマシンでログを収集するエージェントです。WindowsにLogtailをインストールと[LinuxにLogtailをインストール]を参照してください。Logtail を ECS サーバにインストールした後、サーバのイントラネット IP アドレスをマシングループに追加します。

    • Linux では、エージェントは /usr/local/ilogtailディレクトリにインストールされ、2 つの独立したプロセス(ilogtailで始まる収集プロセスとデーモン)を起動します。 プログラム実行ログは /usr/local/ilogtail/ilogtail.LOGです。
    • Windows では、エージェントは C:\Program Files\Alibaba\Logtailディレクトリ(32ビットシステム用)またはC:\Program Files (x86)\Alibaba\Logtailディレクトリにインストールされます(64ビットシステムの場合)。 Windows管理ツール> サービスには2つのWindowsサービスが存在します。1つはログ収集用のLogtailWorkerで、もう1つはLogtailDaemonです。プログラム実行ログは、インストールディレクトリの `logtail_*.logです。
  • Logtail設定 :Logtailの設定では、マシン上の特定のタイプのログを収集し、収集したログを解析し、指定されたログサービスの Logstore にログを送信する方法を説明します。コンソールを使用してログストアに Logtail 設定を追加すると、ログストアが設定に基づいて収集されたログを受信できるようになります。

基本機能

現在、Logtail アクセスサービスは以下の機能を提供しています。

  • リアルタイムログ収集: Logtail は、ログファイルを動的に監視し、インクリメンタルログをリアルタイムで読み込んで解析します。ログの検出とログサービスへのログの転送との間には、3 秒未満の遅延があります。

    注意: Logtail は履歴データの収集をサポートしていません。読み取り時間と生成時間の間に 5 分を超える間隔のログは破棄されます。

  • 自動ログローテーション処理:多くのアプリケーションは、ログファイルをファイルサイズまたは日付に従ってローテーションします。ローテーション処理中に、元のログファイルの名前が変更され、書き込まれるデータを含む新しい空白のログファイルが作成されます。(例えば、監視された app.LOGは、app.LOG.1app.LOG.2を生成するためにローテーションします。)収集されたファイル(app.LOGなど)を指定することができ、ログが書き込まれます。Logtail は自動的にログローテーションプロセスを検出し、このプロセス中にログデータが失われないようにします。

    注意:ログファイルが数秒以内に複数回ローテーションすると、データが失われる可能性があります。

  • 収集例外の自動処理: Logtail は、例外(ログサービスのエラー、ネットワーク測定値、およびクォータオーバーランなど)によるデータ転送の失敗の場合、特定のシナリオに基づいて積極的な再試行を実行します。再試行が失敗した場合、Logtail はローカルキャッシュにデータを書き込み、ある時間後にデータを再送信します。

    注意:ローカルキャッシュはサーバーのディスクにあります。キャッシュされたデータが 24 時間以内にログサービスによって受信されなかった場合、そのデータは破棄され、キャッシュから削除されます。

  • 柔軟な収集ポリシーの設定: Logtailの設定を実行して、ECSサーバー上のログの収集方法を柔軟に指定できます。具体的には、実際のシナリオに基づいてログディレクトリとファイルを(ワイルドカードを使用した完全一致またはファジー一致を使用して)選択できます。ログ収集の抽出方法をカスタマイズし、抽出されたフィールドの名前を設定することができます。ログサービスのログデータモデルでは、各ログに正確なタイムスタンプ情報が必要であるため、Logtailはカスタムログ時刻形式を提供し、異なる形式のログデータから必要なタイムスタンプ情報を抽出できます。

  • 収集設定の自動同期: ログサービスコンソールで設定を作成または更新すると、Logtailは自動的に3分以内に設定を受け入れて適用します。構成の更新プロセス中に収集されたデータは失われません。

  • 自動エージェントアップグレード: Logtailをサーバーに手動でインストールすると、ログサービスは自動的にエージェントO&Mを実行してアップグレードします。エージェントのアップグレード処理中にログデータが失われることはありません。

  • ステータス監視: Logtailエージェントが多すぎるリソースを消費してサービスに影響を与えないように、Logtailはリソース(CPUとメモリ)の消費量をリアルタイムで監視します。Logtailエージェントは、マシン上で実行中の操作への影響を避けるために、リソース使用制限を超えたときに自動的に再起動します。エージェントは、過剰な帯域幅の消費を防ぐために、事前にネットワークトラフィックを制限します。

    注意:

    • Logtailエージェントが再起動すると、ログデータが失われる可能性があります。
    • 処理ロジックを除いてLogtailエージェントが終了すると、対応する保護メカニズムが起動され、エージェントがログ収集を続行するために再起動されます。ただし、再起動する前にログデータが失われる可能性があります。
  • 転送データ署名:転送プロセス中にデータが改ざんされるのを防ぐため、LogtailエージェントはAlibaba Cloudのアクセスキーを積極的に取得し、送信前にすべてのログデータパケットに署名します。

    注意: Logtailエージェントは、重要なセキュリティを確保するために、HTTPS経由でAlibaba Cloudアクセスキーを取得します。

特徴

  • ログファイルに基づく非接続のログ収集

    アプリケーションコードを変更する必要はなく、ログ収集はアプリケーションの動作ロジックに影響を与えません。

  • ログ収集処理中の例外処理を安定して行う

    Logtailは、ネットワークまたはログサービスで例外が発生した場合や、ユーザーデータが一時的に予約済みの書き込み帯域幅の上限を超えた場合に、データセキュリティ対策(プロアクティブリトライおよびローカルキャッシングなど)を行います。

  • ログサービスに基づく集中管理機能

    Logtailをインストールすると、サーバにログインして別々の設定を行うことなく、すべてのサーバのクライアント上でデータソース、収集モード、その他のパラメータを設定できます。

  • 包括的な管理メカニズム

    マシン上で実行されている収集エージェントがサービスのパフォーマンスに大きな影響を与えないように、LogtailはCPU、メモリ、ネットワークリソースの使用を保護し、制限します。

処理能力と制約

次の表は、サーバーごとの処理機能と Logtail アクセスサービスの制約を示しています。

アイテム 処理能力と制約
ファイルエンコーディング UTF-8 / GBKでエンコードされたログファイルがサポートされています。ログファイルが他の形式でエンコードされていると、文字化けや失われたデータなどの未定義の動作が発生します。処理性能を向上させるには、UTF-8エンコードが推奨されます。
ログ処理スループット容量 rawログ処理トラフィックは、デフォルトで1 MB/sに制限されています。データはAlibaba Cloudイントラネットを通じて送信されます。トラフィック制限を超えるとログが失われる可能性があります。このLogtail起動設定パラメータに従って最大で約50 MB/sに制限を設定できます。
ネットワークエラー処理 最大500 MBのローカルキャッシュストレージがサポートされています。Logtailは、ネットワークまたはログサービスで例外が発生したとき、またはユーザーデータが一時的に予約済みの書き込み帯域幅制限を超えたときに、データをローカルにキャッシュします。Logtailは、できるだけ早く送信を再試行します。
構成の更新 更新された構成の適用の遅延は30秒です。
ステータス管理検出 Logtailは、例外(異常なプログラムの終了やリソース制限の超過)が発生した場合に自動的に再起動します。
監視されるディレクトリ数 Logtailは、監視可能なディレクトリの形式を積極的に制限して、ユーザーのリソースの過消費を防ぎます。監視の上限に達すると、Logtailはより多くのディレクトリとログファイルの監視を停止します。最大3,000のディレクトリ(サブディレクトリを含む)を監視できます。
ソフトリンクのサポート 監視対象ディレクトリはソフトリンクにすることができます。
ログファイルサイズ 無制限。
シングルログサイズ 1つのログの最大サイズは512 KBです。複数行のログの各行は、パターンを描くパターンの後に最大512 KBです。
正規表現タイプ Perl互換の正規表現が使用されます。