テキストログ

Custom Logsをクエリ可能なテーブルに変換

自社でしか使っていないソフトウェアが書き出すログもあります。レコードの開始位置、使用する文法、タイムスタンプの場所、列名を一度指定すれば、ほかのテーブルと同じように扱えます。

結果は、Excel、Google Sheets、AIツール、Database REST API経由のアプリで利用できます。

すべてのコネクタータイプをFreeで利用できます。データソース2つとエージェント1つから始められます。

カスタムログファイルは保存場所で読み取り
ネットワーク内クエリストリームス ネットワークエージェント

お使いのマシンで読み取り、整理、クエリを実行。

読み取り専用クエリ · アウトバウンド接続

ソースファイルはそのままの場所に保持されます。ツールにはクエリ結果が送られます。

ソース → エージェント → 許可された結果

Query Streamsは、自社でしか使っていないソフトウェアが書き出したものも含め、あらゆるテキストログを読み取り、そのフォルダーをライブSQLテーブルに変換します。Microsoft Excel、Google Sheets、MCP経由のAIアシスタント、REST API、Power BIから読み取り可能です。形式(レコード境界、文法、タイムスタンプ、列、ローテーション)を一度記述すれば、以後Agentがその設定を維持します。使用できる文法は6種類です。区切り形式、key = value、grok、JSON lines、#Fieldsヘッダーディレクティブ、固定幅形式です。設定に一致しない行も破棄せず未加工の行として保持されるため、想定外の形式が現れてもデータは失われません。

  • 6種類の文法を一度記述するだけ
  • 一致しない行も破棄せず保持
  • 解釈のために外部へ送信されることはありません

適切な設定でCustom Logsを接続

接続先はNetwork Agentのままです。以下はCustom Logs固有の設定です。

フォルダ
テキストログが保存された任意のフォルダー。ローカルディスクまたは\\server\share形式のネットワーク共有(割り当て済みドライブ文字は不可。LinuxまたはMacでは、あらかじめマウントしてください)。サブフォルダーも対象となり、包含・除外パターンを指定できます
文法
区切り形式、key = value、grok、JSON lines、#Fieldsヘッダーディレクティブ、固定幅形式
レコード境界
自由に設定できます。1レコード1行のほか、パターン、固定行数、空行、センチネルを指定でき、複数行のレコードも1つのまとまりとして保持されます
タイムスタンプ
位置と形式を指定します。行に年が含まれない場合は、ファイルの更新時刻またはファイル名から年を取得できます
ローテーション
名前付きのローテーションパターン10種類と、ローテーションなしの通常ファイルに対応。圧縮アーカイブもそのまま読み取ります
形式に一致しない行
events_raw_linesに原文のまま保持され、破棄されることはありません
資格証明書
ありません。サーバーは不要で、エージェントがファイルをその場で読み取ります

編集できるログプロファイルはこれだけです。それが重要なポイントです。それ以外のプロファイルは、設定が変わらないように私たちが固定しています。カスタム設定は、提供済みプロファイルのように事前に正しさを証明できません。その代わりとなるのがプレビューです。お客様自身のファイルに設定を適用し、確定前に行の内容を確認できます。

Custom Logsの仕組みに合わせて設計

形式を構成する5つの要素

固定プロファイルでは、これらの設定はあらかじめ固定されています。Customでは5つすべてを指定できます。形式の説明はこの5つだけで完結し、ほかに設定する項目も隠れた項目もありません。

  • レコード境界 — あるレコードが終わり、次のレコードが始まる位置。これにより、複数行のスタックトレースを1行にまとめて保持できます。
  • 文法 — 区切り形式、key = value、grok、JSON lines、#Fieldsヘッダーディレクティブ、固定幅形式のいずれか。
  • タイムスタンプ — 位置と表記方法。行に年が含まれない場合に、どこから年を取得するかも指定します。
  • 列 — 各フィールドの名前と型。これにより、数値は数値として並べ替えられ、日付は日付として絞り込まれます。
  • 成長モデル — ファイルがどのように増加しローテーションするかを定義し、昨日のアーカイブと今日のライブファイルを1つのテーブルとして扱います。
-- 列名が何であれ、これは通常のSQLです
SELECT   file_name, severity, COUNT(*) AS lines
FROM     fileset.events
WHERE    severity IN ('WARN','ERROR')
GROUP BY file_name, severity
ORDER BY lines DESC

まずは組み込みプロファイルをお試しください

Test connectionは、見つかった形式を同梱プロファイルと照合し、最も近いものを提示します。これはフィンガープリント照合であり、モデルがログを読み取るわけではありません。ファイルの内容が解釈のためにどこかへ送信されることはありません。組み込みプロファイルが合えば、それを使ってください。固定済みのプロファイルを使うほうが、自分で記述したものを保守するより手間がかかりません。合うものがなければご自身で記述してください。組み込みプロファイルがあったほうがよい場合は、リクエストをお寄せください。

形式と動作の詳細

Custom Logsの必要なリファレンスを開いてください。

テキストファイルであれば、表形式にすることも可能です。
大きなアイデア

テキストファイルであれば、表形式にすることも可能です。

互いに無関係な形式のファイルが3つ。1つは業務アプリ、1つはバッチジョブ、もう1つは2011年以来誰もサポートしていないマシンが出力したものです。それぞれを一度記述すれば、名前を付けた列をそのままクエリできます。実行するコレクターも、保守するインデックスも、データの複製も必要ありません。

ログフォルダあなたのファイル
プラント監査ログキー=値
batch-2026-09-10.txt固定幅
ロボットトレース区切られた

ローテーション、圧縮アーカイブ、再読み込み済みファイルにも対応

何が問題だったのか.sqlSQL
セレクト ファイル名、重大度、
       カウント(*) AS 線
フロム   ファイルセット.イベント
どこ  重大度 イン (「警告」,'エラー')
GROUP BY ファイル名、重大度
ORDER BY 線 DESC
結果あなたのコラム
ファイル名重大度線
プラント監査ログエラー268
バッチ-2026-09-10警告154
ロボットトレースエラー61
プラント監査ログ警告9

があります 重大度 コラムがあると言ったので

数値は例示用です。回答の傾向を示すもので、ベンチマークではありません。

行の意味を表す6つの方法
文法

行の意味を表す6つの方法

これまでに書かれたテキストログはほぼすべて、以下の6つのパターンのいずれかに当てはまります。あなたのパターンを以下から見つけてください。サンプル行を見れば、説明を読むよりも早く解決できるでしょう。

選択できる文法

6つの文法
区切りCSV、TSV、パイプ、何でも
04:11:07、web-01、エラー、ディスクがいっぱいです
  • 区切り文字を指定します — カンマ、タブ、セミコロン、パイプなど、ファイルで使われているもの
  • 引用符で囲まれたフィールドは尊重されるため、メッセージ内のカンマはそのまま残ります。
  • ヘッダー行を使用すると、列名を手動で入力する代わりに、列名を自動的に指定できます。
  • 小数点区切り文字は、カンマが使用されているファイルでは、ユーザーが設定できます。
キー = 値自己記述ペア
ts=04:11:07 host=web-01 level=error
  • 行内のキーが列になります — もう一度指定する必要はありません
  • 区切り文字はどちらもあなたのものです。キーと値の間、そしてペアの間にあるものが区切り文字になります。
  • キーと値のペアの前にあるプレフィックス(タイムスタンプやタグなど)はスキップできます
  • 解析されることを前提に書き込まれたアプリケーションログやマシンログによく見られる。
グロックパターン気まずい人たちのために
%{TIME:ts} %{LOGLEVEL:lvl} %{DATA:msg}
  • 名前付きキャプチャが列になります — ほかの方法が合わない場合の切り札です
  • 組み込みプロファイルの背後にあるパターンライブラリは、そこから借用できるものです。
  • 複数の線形状を含むファイルの場合、複数のパターンを順番に試すことができます。
  • 初期設定 — 1 メッセージ 列を絞り込み、
JSON行1行に1つのオブジェクト
{"ts":"04:11:07","level":"error"}
  • フィールドが列になり、実際に必要なフィールドを選択できます。
  • ネストされたオブジェクトは、フラット化または削除されることなく、JSONとしてそのまま保持されます。
  • コンテナランタイムのラッパーを取り除いて、内部のレコードをクエリできます
  • 現代のログライブラリのほとんどは、構造化するように指示されたときに書き出すものです。
ヘッダーディレクティブファイルには列名が付けられている
#フィールド: 日付 時刻 s-ip cs-method
  • 上部近くの行でフィールドが宣言され、その後に列が続きます。
  • W3C拡張フォーマット、そしてそのアイデアを借用したその他すべて
  • 指示の名前を指定するので、スペルを記述する必要はありません。 #フィールド
  • 同期するものはありません — 列の一覧の情報源はファイルです
固定幅位置による列数
20260910041107 web-01 エラー
  • 各列の名前、開始位置、長さを指定します — 区切り文字は不要です
  • 区切り文字を含むフィールドを持つファイルに対する正しい答え
  • それでもメインフレーム、コントローラー、そして多くの産業機器が書いているのは
  • パディングはトリミングされるため、値はスペースで囲まれて届きません。
内蔵型をリクエストしてください他の人も持っているフォーマットであれば

自分で記述するのが手早い方法です。多くの人が使う形式なら、Agentが固定して全員に提供する組み込みプロファイルとして用意するほうがよいと考えています。コネクターからリクエストを直接送信でき、Agentのアップデートで提供されます。

このプロファイルの根拠について、率直に述べておく価値があるでしょう。他のログページに組み込まれているプロファイルは、それぞれ実際のキャプチャファイルに基づいて構築およびテストされており、その旨を明記しています。 このプリセットは — 形式はご自身で記述するため、事前に検証済みの固定フォーマットはありません。その代わりにプレビューを用意しています。Test connectionを実行すると、ご自身のファイルに記述を適用し、確定する前に、解析できた内容とできなかった内容を確認できます。
一度記述すれば、実行する場所を問わず使えます
すべてのサイト

一度説明してください。 ランニングする場所ならどこでも使ってください

記述はマシンではなくコネクターの一部です。本社で監査ファイルを読み取る5つの部門と同じ部門が、工場や第2リージョンでもそのファイルを読み取ります。各拠点ではNetwork Agentがファイルをその場で読み取り、Query Streamsに接続します。ファイアウォールから見れば通常の外向き接続なので、ポートを開けたりVPNを構築したりする必要はありません。

本社 業務アプリケーションが独自の監査ファイルを作成する 発信
工場フロア 固定幅バッチレコードを書き込むコントローラ 発信
EU西側 同じアプリ、同じ説明、2つ目のフォルダ 発信

3つのアウトバウンド接続を、1か所でクエリ — インバウンドポートもVPNもファイアウォールの変更も不要

アイデンティティを指定する

各行には、どこから取得されたかを示すラベルが付きます。デフォルトではファイル名です。マシン名やサイト名が行内のフィールド、またはファイル名の一部に含まれる場合は、そちらをラベルとして指定し、それでグループ化できます。

ファイル名 · 列 · ファイル名の一部

開けるものはありません

Agentは暗号化されたアウトバウンド接続を1つ確立し、送信するリクエストも、戻ってくる行データも、どちらもその接続を通ります。インバウンドポートもVPNも、ファイアウォールの変更依頼も不要です。すでに稼働中のサーバーにコレクターデーモンを追加する必要もありません。

接続は1つ、双方向

地域をまたがる単一のクエリ

すべての情報源 フェデレーションクエリ 各ログに専用のAgentを指定できるので、1つのステートメントで、独自形式のログとそれを説明するデータベースを並べて扱えます。たとえば、バッチファイルと、それが属する注文データを並べて扱えます。BusinessおよびEnterpriseで利用できます。

ログ1つ + データベース1つ → 結果セット1つ

サイトごとにではなく、一度だけ書き込む

フォーマットを記述する作業は一度きりです。同じ形状の2つ目のフォルダは、同じ記述を持つ2つ目のコネクタに過ぎないため、別の場所に展開するのは、新たな調査ではなく、設定手順となります。

記述1つ → 同じ形式のすべてのフォルダー

テキストファイルでは答えられない4つの質問
難しいところ

テキストファイルでは答えられない4つの質問

行を解析するのは簡単な半分です。これらはログファイル自体には記載されていない情報であり、それぞれが推測ではなく、あなたが明示的に記述したものです。

レコードの開始位置と終了位置

スタックトレースは20行にわたる1つのイベントであり、それを20のイベントとして読み取ると数値が間違ってしまいます。境界を示す方法は6つあります。1行、レコードを開くパターン、空白行、開始マーカーと終了マーカー、継続ルール、または固定カウントです。

1レコードは必ずしも1行とは限りません

エンコーディングにはデフォルト値がありません

ここだけは、意図的に未入力になっています。Latin-1のファイルをUTF-8と仮定してもエラーにはならず、アクセント付き文字がすべてひそかに文字化けし、数か月後に初めて気付くことになります。そのため、推測するのではなく、最初の同期前に一度確認します。

選ばれたものであり、決して想定されたものではない

線がない年

月日だけを出力し、年を含めない形式は多くあります。年を決める方法は3つあります。行内の年を使う、ファイルの最終更新時刻から取得する、またはファイル名から読み取る方法です。日付入りのアーカイブでは、通常ここに年が含まれています。

行内から · ファイルから · 名前から

何も二度カウントされない

各ファイルは先頭の4 KBでフィンガープリントされるため、名前変更やローテーション後も、最初から読み直さずに同じファイルとして認識されます。名前から認識されるローテーションパターンは10種類あり、単純に増加するファイル向けの「なし」も選べます。

4 KBのプレフィックスハッシュ · 20,000レコードのウィンドウ

5つの部分があり、そしてそれはテーブルです
説明

5つの部分があり、そしてそれはテーブルです

入力するのはこれだけです。他のログページにある組み込みプロファイルも、同じ5つの要素で構成され、こちらで入力してAgentが固定しています。ここでは、それらをご自身で設定できます。

レコード境界1つのイベントとしてカウントされるもの
一行オープニングパターン空白行開始マーカーと終了マーカー継続ルール固定数
文法レコードがどのように分割されるか
区切られたキー=値グロックJSON行ヘッダーディレクティブ固定幅
タイムスタンプ時間はどの部分ですか
分野形式タイムゾーン年モード2つの分野から構成されるゼロを意味する値
コラム名前と種類
文字列整数ビギントダブルブール値タイムスタンプタイムスタンプ日付JSON
成長ファイルがどのように変化するか
追加する回転パターン圧縮された接尾辞ファイルリング最大ライン長
デフォルト設定は意図的に控えめであり、それが設計意図である。 メッセージ 1行につき1列で、イベント時刻にはファイルの最終更新時刻を使用します。ほとんどの場合、これだけで最初の同期は成功します。その後、プレビューを確認しながら、必要な列になるまで調整できます。各行には取得元のファイルも記録され、すべてが1つのテーブルに格納されます。 ファイルセット.イベント.
これは意図的に行わないことです

これは意図的に行わないことです

まず一番大きなものから言ってみましょう。 この方法を試す前に、内蔵プロファイルを試してみてください。。Test connectionを実行すると、Agentが認識した中で最も近い組み込みプロファイルを提示します。組み込みプロファイルはAgentによって固定され、実際のファイルでテスト済みですが、今日ご自身で書いた記述はそうではありません。このプリセットは、ほかでは使われていない形式のための切り札であり、最初に選ぶ設定ではありません。

形式を解明するために、ログを読み取るものはありません。最も近い形式が提示されるのは、ファイルの形状を同梱プロファイルと比較しているためです。これは既知の形式とのパターン照合であり、モデルがデータを読み取るわけではありません。どれも一致しなければ、記述はご自身で作成し、プレビューで確認してください。

これはリアルタイム監視ではありません。クエリ ストリームは、クエリ実行時にディスク上のファイルをそのまま読み込むため、ジョブの失敗は監視対象のストリームではなく、行として表示されます。行が出力される瞬間に1秒未満のアラートが必要な場合は、ログ パイプラインが適切なツールです。

テキストのみを読み取ります。フォルダー内のアーカイブやバイナリデータベースは — 。ジップ, 。タクシー、raw journalファイルと同様に、開いて内容を推測することなく、そのままにします。テキストログの圧縮済みローテーションファイルは読み取りますが、それ以外の内容が入ったコンテナは読み取りません。

説明が間違っている可能性もあるため、何も破棄されません。文法が一致しない行は、理由が付加された生の行として保持されるため、エラーはサイレントギャップとしてではなく、確認および照会可能な形で表示されます。説明を修正して再同期してください。残りの部分は通常の設計に従います。エージェントはアウトバウンドに接続してファイルを読み取り、サーバーには何もインストールされず、何も書き戻されず、アクセスは読み取り専用です。

接続から有用な結果まで。

  1. フォルダーにアクセスできる場所にNetwork Agentをインストールし、コネクターの接続先に指定します。
  2. まずTest connectionを実行します。Agentが見つかったファイルのフィンガープリントを作成し、最も近い組み込みプロファイルを提示します。合うものがあれば、それを選ぶだけで記述は完了です。
  3. 合うものがなければ、ご自身で形式を記述します。レコードの開始位置、6種類の文法のどれを使うか、タイムスタンプの位置、列名を指定します。
  4. ローテーションパターンを選び、タイムスタンプに年が含まれない形式では、年の取得元も指定します。その記述が固定されます。
  5. クエリを実行します。用意した形式を同じドライバーで読み取るため、テーブルは他のあらゆるログコネクターとまったく同じように動作します。

Custom Logsの結果を活用しましょう。

1つの接続で、スプレッドシート、アプリ、AIツールを利用できます。保存済みクエリを実行する権限を共有すれば、受信者には許可された結果だけが表示され、SQLとソースのログイン情報は隠されます。

チーム、ベンダー、パートナーの皆様へ

ライブのCustom Logs結果をそのままワークシートに取り込み、必要に応じて更新できます。デスクトップ版Excel、Excel Online、Microsoft 365に対応。

Excelを見る

平易な英語で質問するだけ。NovaはCustom Logsのテーブルを把握しており、SQLを作成・実行して、回答を説明し、グラフ化します。クエリを書く必要も、認証情報を渡す必要もありません。

Novaの仕組み

同僚、ベンダー、パートナーなど、誰とでもライブのCustom Logs結果を共有できます。ブックマーク可能なグリッドとして共有され、スマートフォン、タブレット、デスクトップで開くと最新のデータを再取得します。相手に表示されるのは結果だけで、SQLやファイルは表示されません。

データビューアの仕組み

アプリとシステム向け

Custom Logsクエリを、あらゆるアプリケーションから呼び出せる認証付きJSONエンドポイントとして公開できます。OpenAPI 3.1仕様と、すぐに使えるPostman、Insomnia、Hoppscotchのコレクションも付属。データベースのポートを開放する必要はありません。

REST APIを見る

生成されたPower Query MをPower BIの詳細エディターに貼り付けるだけで、レポートがHTTPS経由でライブのCustom Logs結果を読み込みます。ODBCドライバーもデータベースのポート開放も不要です。

Power BIを見る

データベース認証情報をアプリに埋め込む代わりに、RESTエンドポイント経由でCustom Logsを使ってAnvilのPythonアプリを支えます。

Anvilを見る

AIツール向け

AIアシスタントに、正しいSQLを書くために必要なスキーマ情報とともに、Custom Logsへの読み取り専用アクセスを付与できます。チャットに認証情報を記載する必要はありません。

MCPを探索する

人々に届けられる

Custom Logsを他のデータと結合

データベース、ビジネスAPI、ファイル、ログを1つの読み取り専用クエリにまとめられます。すべてのコネクターがFederated Queriesに対応しています。

接続とテーブルを指定してください。Query Streamsがソースへのクエリを処理し、結果を統合します。

Federated Queriesを見る
複数ソースをまたぐクエリの例
-- コピーなし、マージなし、スケジュールなし
セレクト   c.region、COUNT(*) AS orders、SUM(i.amount_due) AS invoiced
フロム     customlogs.fileset.orders1 f
ジョイン     pg_crm.一般顧客2   c ON c.id = f.customer_id
ジョイン     請求する.stripe.invoices3   i ON i.customer = c.stripe_id
GROUP BY c.領域
ORDER BY 請求書記載のDESC;

ご自身の接続名、スキーマ名、テーブル名、カラム名を使用してください。

コネクターシリーズ共通の機能。

すべてのログコネクターでは、次のテーブルも利用できます。

  • events — 解析された各行を1レコードとして格納します。タイムスタンプ、文法で定義されたフィールド、および元のファイル名を示す_source_fileが含まれます。
  • events_raw_lines — 文法に一致しなかった行を削除せず、元のまま保持します。想定外の形式も、引き続きクエリで調べられます。
  • files_currentとfiles_events — 現在のファイル一覧と監査履歴です。何が追加され、何がローテーションされ、何が消え、何が保留されたかを、ファイル名と理由とともに確認できます。
  • ローテーションを回避するのではなく、正しく認識します。名前付きのローテーションパターン10種類に加え、ローテーションされていない通常のファイルにも対応するため、昨日のログもその圧縮アーカイブも、今日のログと同じテーブルとして扱えます。

知っておくと良い

  • 読み取り専用を徹底。一度に実行できるのは1つのステートメントのみで、SELECTなどの読み取り操作に限られます。こちらがログを書き込んだり、移動したり、ローテーションしたり、切り詰めたりすることは一切ありません。
  • アップロードは一切ありません。行はエージェントの隣にあるお客様自身のマシン上で解析され、暗号化されてキャッシュされます。ネットワーク外に送信されるのはクエリの結果だけです。
  • 読み取るのは新しいバイトだけです。エージェントはファイルを最初から読み直すのではなく、前回の続きから再開するため、ログが頻繁に更新されても日ごとに負荷が増えることはありません。
  • SQL方言はDuckDBです — 他のコネクタに対して書くのと同じSQLを使用します。

Custom Logsについてのよくある質問

Custom Logs のクエリ結果はどこで利用できますか?

Custom Logs の結果は、Excel、Google Sheets、Data Viewer、Database REST API 経由のアプリ、MCP または Nova 経由の AI ツールで利用できます。保存した結果は、対応する Automation の配信先、レポート、アラートにも使用できます。利用可能な配信先と使用枠はプランによって異なります。

Custom Logs 用に受信ポートを開く必要がありますか?

いいえ。Custom Logs にアクセスできるマシンに Network Agent をインストールしてください。Agent は Query Streams に向けて外向きに接続するため、受信ポートや VPN は不要です。ただし、接続元である Agent のマシンからのアクセスは、ソース側のアクセスルールで許可されている必要があります。

Custom Logs のファイルはアップロードされますか?

Network Agentはファイルが保存されている場所で読み取り、キャッシュはエージェントのマシン上に保持します。ソースファイルがアップロード、移動、書き換えられることはありません。要求されたクエリ結果のみが、暗号化された外向き接続を通じてネットワークの外に送られます。

Custom Logs を接続するには何が必要ですか?

フォルダー:ローカルディスクまたはネットワーク共有上のテキストログフォルダーを指定します。ネットワーク共有は\\server\share形式で入力してください(割り当て済みドライブ文字は不可。LinuxまたはMacでは事前にマウントしてください)。サブフォルダーも対象に含まれ、包含・除外パターンを指定できます。文法:区切り形式、key = value、grok、JSON Lines、#Fieldsヘッダーディレクティブ、固定幅に対応。レコード境界:1行を1レコードとするほか、パターン、固定行数、空行、センチネルを指定できます。複数行のレコードもひとまとまりに保てます。タイムスタンプ:位置と形式を記述します。行に年が含まれない場合は、ファイルの更新日時またはファイル名から年を取得できます。

Custom Logs をほかの接続済みデータソースと結合できますか?

はい。Federated Queriesは、データベース、ビジネスAPI、ファイル、ログなど、あらゆるコネクタータイプに対応しています。1つの読み取り専用クエリで接続とテーブルを指定してください。Query Streamsが必要に応じてソースごとのクエリを変換し、結果を統合します。 Federated Queriesの仕組みをご覧ください。

組み込みプロファイルの代わりに、これを使用すべきなのはどのような場合ですか?

他の方法ではうまくいかない場合に使います。組み込みプロファイルは、機械コントローラー、Webサーバー、コンテナ、アプリケーションフレームワーク、システムログを網羅しています。それぞれ実際のファイルを使って作成・テスト済みです。そのため、ログが該当する形式なら、自分で記述するよりもプロファイルを選ぶほうが手間が少なく、テストも充実しています。

決定を下す前に、接続テストを実行してください。エージェントは、ファイルの形状を同梱のプロファイルと比較し、認識できる最も近いプロファイルを提示します。そのため、回答は推測ではなく、実際のファイルに基づいて得られます。何も返ってこない場合は、説明を参照してください。

正規表現を知っておく必要はありますか?

通常はそうではありません。6つの文法のうち5つは、パターンを全く必要としません。区切り文字付きファイルには区切り文字が必要で、キー=値形式ファイルはそれ自体で記述され、JSON行はそれ自体で記述され、ヘッダーディレクティブは列名を自身で指定し、固定幅ファイルには開始位置と列ごとの長さが必要です。

6番目の形式がGrokで、扱いにくい行に対応するための手段です。それでも、タイムスタンプ、レベル、残りの部分といった名前付き要素を組み合わせるのが主な作業です。組み込みプロファイルの背後にあるパターンライブラリを参照できるため、白紙の状態から始める必要はありません。

説明文は最初から正しく書かなければならないのですか?

いいえ、デフォルト設定ではその必要はありません。初期設定のままで、ほぼすべてのテキストファイルで最初の同期が成功します。 メッセージ 1行につき1列で、イベント時刻にはファイルの更新日時を使用します。これで、実際に内容を確認できるテーブルができあがります。

そこから内容を調整できます。プレビューでは、指定内容が実際の行にどう反映されるか確認できます。重要度やジョブ番号を独立した列に取り出し、確定前に結果を確認できます。後から変更して再同期することもでき、その間にデータが失われることはありません。

私のイベントは複数行にまたがっています。スタックトレースを処理できますか?

はい。これは特に必要とされる設定です。レコードは必ずしも1行とは限りません。パターンに一致する行が現れたところからレコードが始まるように指定できます。一般的なのは行頭のタイムスタンプで、次に一致する行までのすべてがそのレコードに属します。

形状がこれに当てはまらない場合、境界線を描画する方法は他に5つあります。レコード間の空白線、開始マーカーと終了マーカー、継続線としてカウントされるルール、または固定数の線です。20行の例外は、トレース全体が1行に収まる形で現れます。

もし行にタイムスタンプが全くない場合はどうなるでしょうか?

これがデフォルトのケースで、問題なく機能します。時刻として指定されたフィールドがない場合、イベント時刻にはファイルの更新日時が使われます。そのため、行の並べ替えや保持期間の適用は引き続き可能ですが、時刻の精度は行単位ではなくファイル単位になります。

時刻が行内の2つのフィールドに分かれている場合(固定幅ファイルや区切り形式のファイルでよくある、日付列と時刻列など)は、両方を指定して1つのタイムスタンプに結合できます。

どのエンコード方式を選択すればよいですか?

UTF-8は、この10年間に作成されたほとんどのファイルにとって最適な選択肢です。デフォルト値が設定されていない唯一のフィールドですが、それは意図的なものです。Latin-1ファイルでUTF-8を使用してもエラーが発生しないと仮定すると、アクセント付き文字はすべて黙って破損してしまいます。一度質問するよりも、黙って破損してしまう方がはるかに深刻な問題です。

判断に迷ったら、プレビューで確認できます。文字コードが違っていれば、サンプル行に文字化けがすぐに現れます。UTF-8以外が必要になる主な原因は、古いWindowsソフトウェアや産業機器です。

私のフォーマットを組み込み機能として追加してもらえませんか?

お気軽にご相談ください。多くの人が使う形式(市販製品、一般的なフレームワーク、産業機器など)であれば、すべてのお客様に同じ内容を記述してもらうより、組み込みプロファイルとして提供したいと考えています。コネクターから直接リクエストを送信できます。

組み込み機能は、お客様にとっても弊社にとってもメリットがあります。エージェントによって固定され、実際のキャプチャデータでテスト済みであり、コネクタを誰かが操作する必要なく、エージェントのアップデートとともにサーバーに提供されるからです。

一致しない行はどうなりますか?

それらは削除されるのではなく、保持されます。文法が一致しない行は、理由が付加された生の行として保持されるため、奇妙なエントリ、あなたの操作中に変更されたフォーマット、またはまだ完全には正しくない説明などが、数値の空白として表示されるのではなく、確認および照会可能な情報として表示されます。

これが、記述を調整しやすくするセーフティネットです。データが破棄される厳格なパーサーと、テキストが延々と続く緩いパーサーのどちらかを選ぶ必要はありません。解析された行は型付きで、解析できなかった部分もその横に残ります。

Custom Logsを、実際に作業する場所で活用しましょう。

Freeから始めましょう。すべてのコネクタータイプ、データソース2つ、Network Agent 1つを利用できます。ニーズの拡大に応じて、プランの利用枠を追加できます。