Logtail はデフォルトでインクリメンタルログのみを収集します。 履歴ログをインポートする場合は、Logtail の履歴ログインポート機能を使用します。

始める前に

  • Logtail のバージョンは0.16.6以上であること。
  • 対象の履歴ログは、収集設定に属していなければならず、Logtail によって収集さていないこと。
  • 履歴ログの最終変更時刻は、Logtail 設定時刻よりも前であること。
  • ローカル設定の生成とインポートの最大間隔は1分であること。
  • ローカル設定をロードする特別なアクションのため、Logtail がお使いのサーバーにLOAD_LOCAL_EVENT_ALARMを送信してこの動作を通知すること。

このタスクについて

Logtail は、リスニングをオンにして検出されたイベントに基づいてログを収集します。 Logtail はローカル設定をロードし、ログ収集をトリガーすることもできます。 Logtail は、ローカル設定をロードして履歴ログを収集します。

手順

  1. 収集設定情報の作成
    収集を設定し、マシングループに適用します。 対象のログが収集設定に属していることを確認します。 収集の設定についての詳細は、テキストファイルの収集を参照してください。
  2. 設定の一意の ID を取得します。
    次の例のように、ローカル /usr/local/ilogtail/user_log_config.jsonから設定の一意のIDを取得します:
    grep "##" /usr/local/ilogtail/user_log_config.json | awk '{print $1}'
                        "##1.0##log-config-test$multi"
                        "##1.0##log-config-test$ecs-test"
                        "##1.0##log-config-test$metric_system_test"
                        "##1.0##log-config-test$redis-status"
    					
  3. ローカルイベントを追加します。
    ローカルイベントを 次のフォーマットを使用して JSON ファイル /usr/local/ilogtail/local_event.jsonに保存します。
    [ 
      {
        "config" : "${your_config_unique_id}",
        "dir" : "${your_log_dir}",
        "name" : "${your_log_file_name}"
       },
      {
       ...
       }
       ...
    ]
    					
    • 構成項目
      構成項目 説明
      Config ステップ2で取得した構成の一意のID。 ##1.0##log-config-test$ecs-test
      dir ログが存在するフォルダー。
      フォルダーが/で終わることはできません。
      /data/logs
      name ログの名前。 access.log. 2018-08-08
      Logite が無効な JSON ファイルを読み込まないようにするには、ローカルイベントの構成情報を一時ファイルに保存し、一時ファイルを編集した後に/usr/local/ilogtail/local_event.jsonにその内容をコピーすることをおすすめします 。
    • 設定の例
      $ cat /usr/local/ilogtail/local_event.json
      [
        {
          "config" : "##1.0##log-config-test$ecs-test",
          "dir" : "/data/log/",
          "name" : "access.log. 2017-08-08"
        },
        {
          "config" : "##1.0##log-config-test$ecs-test",
          "dir" : "/tmp",
          "name" : "access.log. 2017-08-09"
        }
      ]
      							
  • Logtail が設定をロードしたかどうかを確認するには?

    ローカルファイルlocal_event.jsonを保存すると、Logtailはこのローカル構成ファイルを1分以内にメモリにロードし、local_event.jsonの内容をクリアします。

    Logtailがローカルイベントを読み込んでいるかどうかは、次の方法で確認できます:

    • local_event.json内のコンテンツが消去されているかどうかを確認します。 消去された場合、Logtail はローカル設定情報を読み込みます。
    • /usr/local/ilogtail/ilogtail.LOGファイルに次の情報が含まれているかどうかを確認します。 process local event キーワード。 local_event.jsonの内容が消去されたが、これらのキーワードが見つからない場合、ローカル設定ファイルが無効でフィルタされている可能性があります。
    • ログ収集エラー診断LOAD_LOCAL_EVENT_ALARMアラームがあるかどうかをクエリします。
  • Logtail は設定情報をロードしましたが、それでもデータを収集できません。 この問題をどう処理しますか?

    この問題は、以下の理由により発生する可能性があります:

    • 設定情報が無効です。
    • ローカル設定のconfig項目は存在しません。
    • 対象のログは、収集設定内で指定されたパスにありません。
    • 対象のログは既に収集されています。
  • 収集済みのデータをどのように収集できますか?
    収集済みのデータを収集するには、次の手順を実行します:
    1. /etc/init.d/ilogtaild stopコマンドを実行してLogtail を停止します。
    2. /tmp/logtail_check_pointファイルでログのパスを検索します。
    3. このログのチェックポイント(JSONオブジェクト)を削除し、変更を保存します。
    4. 手順3に従って、ローカルイベントを追加します。
    5. /etc/init.d/ilogtaild startコマンドを実行してLogtail を起動します。