メインコンテンツまでスキップ
Sumo Logic Japanese

ローカル ファイル ソース

コレクタがインストールされたマシンからログ メッセージを収集するには、ローカル ファイル ソースを作成します。ソースを編集する場合、メタデータの変更内容はこれからのログに反映されます。過去に収集したログのメタデータは、遡って変更されることはありません。

ローカル ファイル ソースでサポートされるエンコーディング

ローカル ファイル ソースでは、以下のエンコーディングを使用するログを収集できます。

  • US-ASCII
  • UTF-8 (デフォルト)
  • UTF-16
  • UTF-16BE
  • UTF-16LE
  • UTF-32
  • UTF-32BE
  • UTF-LE

UTF-16 は国際フォーマットとしてよく使用されます。また、MS SQL Server や MS SharePoint などの Microsoft サービスのログでは一般的です。UTF-16 エンコーディングを使用する場合、その設定はソースが収集するすべてのログに適用されます。たとえば、ワイルドカード パス式を使用する場合、フィルタに一致するファイルはすべて同じコンテンツ エンコーディングを使用します。

ファイル競合の回避

Sumo コレクタがログ ファイルにアクセスして、そのコンテンツを読み取る場合、コレクタは非排他読み取りモードでファイルを開きます。読み取りアクセス専用にファイルは開かれ、読み取り/書き込みロックはリクエストされません。ただし、ファイル競合問題はそれでも発生する可能性があります。たとえば、コレクタがファイルを読み取っているときに、別のプロセスが読み取りロックをしてファイルを開こうとしたら、この操作は失敗します。Add-Content PowerShell cmdlet は読み取りロックが必須なので、Sumo コレクタがモニタリングしているファイルの書き込みには使用しません。

ローカル ファイル ソースの設定

  1. Sumo Logic で [Manage Data (データの管理)] > [Collection (コレクション)] > [Collection (コレクション)] を選択します。
  2. ソースを追加するインストール済みコレクタの名前を見つけます。[Add... (追加...)] をクリックして、ポップアップ メニューから [Add Source (ソースの追加)] を選択します。


     
  3. [Local File (ローカル ファイル)] をソース タイプとして選択します。 
  4. 以下のオプションを設定します。
  • Name (名前): 新しいソースに表示する名前を入力します。必要に応じて説明を入力します。
  • File Path (ファイル パス): 収集するファイルへのフル パスのリストを入力します。Windows システムのファイルの場合 (Windows イベントを除く)、ドライブ文字を含む絶対パスを入力します。特殊文字はバックスラッシュ (\) でエスケープします。CIFS/SMB を使用して Windows から収集する場合は、「リモート Windows イベント ログ収集の前提条件」を参照してください。
    ファイル/フォルダ名には 1 つのアスタリスク ワイルドカード [*] を使用します ( [var/foo/*.log] など)。ディレクトリ/サブディレクトリ内で再帰的に処理するには 2 つのアスタリスク [**] を使用します ( [var/**/*.log] など)。
  • Collection should begin (コレクションの開始点):  ログ履歴の収集をどこまで遡って開始するかを選択または入力します。以下のいずれかを実行します。
    • 「Now (現在)」から「72 hours ago (72 時間前)」、「All Time (すべての時間)」までの範囲のドロップダウン リストから定義済みの値を選択します。または、
    • 相対値を入力します。相対値を入力するには、[Collection should begin (コレクションの開始点)] フィールドをクリックし、キーボードで削除キーを押してフィールドをクリアします。次に、-1w などの相対時間表現を入力します。月 (M)、週 (w)、日 (d)、時間 (h)、および分 (m) を使用してコレクションの開始時期を定義できます。
  • Source Host (ソース ホスト):  別のホスト名を入力しない限り、OS が割り当てたホスト名が使用されます。ホスト名メタデータは _sourceHost という検索可能なフィールドに格納されます。検索クエリ フィールドでソース ホストやソース カテゴリを引用符で囲まなくてもすむように、メタデータ タグにスペースを使用しないようにします。ホスト名は最大 128 文字です。 

    設定するソースが Docker ログ ソースと同じインストール済みコレクタにある場合、Docker 変数を使用して [Source Host (ソース ホスト)] メタデータ フィールドを設定できます。詳細については、「変数を使用した sourceCategory と sourceHost の設定」を参照してください。

  • Source Category (ソース カテゴリ): このソースから収集された出力をタグ付けするための文字列を入力します。(カテゴリ メタデータは _sourceCategory という検索可能なフィールドに格納されます)。

    設定するソースが Docker ログ ソースと同じインストール済みコレクタにある場合、Docker 変数を使用して [Source Category (ソース カテゴリ)] メタデータ フィールドを設定できます。詳細については、「変数を使用した sourceCategory と sourceHost の設定」を参照してください。

  1. [Advanced (詳細)] で以下のオプションのいずれかを設定します。
  • Blacklist (ブラックリスト):  [Blacklist (ブラックリスト)] フィールドで、ファイルのパスを入力して、ソース コレクションから除外します。不要なファイルを指定する場合、ワイルドカード構文が使用できます。たとえば、 /var/log/*.log を収集しますが、unwanted*.log は必要ない場合、ブラックリストで /var/log/unwanted*.log と指定します。サブディレクトリを除外することもできます。たとえば、 /var/log/**/*.log を収集しますが、/var/log/unwanted ディレクトリ内のファイルはどれも必要ない場合は /var/log/unwanted と指定します。
  • Enable Timestamp Parsing (タイムスタンプ パースの有効化):  デフォルトでは、このオプションはオンになっています。オフにすると、タイムスタンプ情報はパースされません。
  • Time Zone (タイム ゾーン):  タイム ゾーンには 2 つのオプションがあります。
    • ログ ファイル内のタイム ゾーンを使用できます。その後にタイム ゾーン情報がログ メッセージにない場合のオプションを選択します。
    • または、Sumo Logic がログ内のタイム ゾーン情報を無視するように設定する場合は、タイム ゾーンを強制適用します。どのオプションを選択する場合でも、適切なタイム ゾーンを設定することが重要です。ログのタイム ゾーンを判断できない場合、Sumo Logic はログに UTC を割り当てます。ログの残りの部分が他のタイム ゾーンの場合は、検索結果に影響があります。
  • Timestamp Format (タイムスタンプ フォーマット):  デフォルトでは、Sumo Logic はログのタイム スタンプ フォーマットを自動的に検出します。ただし、ソースのタイムスタンプ形式を手動で指定することができます。詳細は、「タイムスタンプ、タイム ゾーン、時間範囲、および日付フォーマット」を参照してください。
  • Encoding (エンコーディング):  デフォルトは UTF-8 ですが、メニューから他のエンコーディングを選択できます。
  • Enable Multiline Processing (複数行処理の有効化): 複数行処理とそのオプションの詳細は、「複数行のログの収集」を参照してください。デフォルトでは、有効になっています。複数行メッセージ (log4J や例外スタック トレースなど) を使用する場合は、このオプションを使用します。single-message-per-line (1 行に 1 つのメッセージ) ファイル (Linux system.log など) の収集時に不要な処理を避けるには、このオプションの選択をオフにします。次のいずれかを選択してください。
    • Infer Boundaries (境界の推定):  同じメッセージに含まれる行を自動判定する場合は、有効にします。
      [Infer Boundaries (境界の推定)] オプションをオフにすると、複数行メッセージの先頭行全体の検出に使用する [Boundary Regex (境界正規表現)] フィールドに正規表現を入力する必要があります。
    • Boundary Regex (境界正規表現):  正規表現を使用してメッセージ間の境界を指定できます。ログ ファイル内のすべての複数行メッセージの先頭行全体に一致する正規表現を入力します。
  1. 新しいソースには、任意の処理ルールを作成できます。
  2. ソースの設定が完了したら、[保存] をクリックします。

このダイアログに戻って、いつでもソースの設定を編集できます。

変数を使用した sourceCategory と sourceHost の設定

In Collector version 19.216-22 and later, if you have a Docker Logs Source on the same Installed Collector where you are configuring the new Source, you can define the Source Category and Source Host, if the Source supports that field, for the new Source using system environment variables defined on the Collector’s host. To do so, specify the environment variables to include the metadata field in this form:

{{sys.VAR_NAME}}

Where VAR_NAME is an environment variable name, for example:

{{sys.PATH}}

You can use multiple variables, for example:

{{sys.PATH}} - {{sys.YourEnvVar}}

You can incorporate text in the metadata expression, for example:

AnyTextYouWant {{sys.PATH}} - {{sys.YourEnvVar}}

If a user-defined variable doesn’t exist, that portion of the metadata field will be blank.

Sumo Logic のログ ファイル ローテーションの処理方法

ログ ファイル ローテーションは、設定を追加しなくても処理されます。たとえば、error.log という名前のアクティブ ログ ファイルがあって、毎日夜に error.log.timestamp へローテーションするとします。この場合、Sumo Logic はファイルがローテーションされることを検出し、ローテーション ファイルと新しい error.log ファイルの両方のモニタリングを継続します。error.log ファイルとローテーション ファイルの最初の 2048 バイトは異なる前提でモニタリングされます。

  • この記事は役に立ちましたか?