このトピックでは、ログクエリに関するよくある質問への回答を提供します。
ログをクエリするときに、ログが収集されたソースマシンをどのように特定しますか?
Logtail 構成が IP アドレスベースの マシングループ に適用されている場合は、内部 IP アドレスを使用してソースマシンを特定できます。詳細については、「IP アドレスベースの マシングループ を作成する」をご参照ください。
__tag__:__hostname__:XXX
文を実行する前に、__tag__:__hostname__
フィールドのインデックスを作成し、そのフィールドの分析を有効にする必要があります。インデックスの作成方法の詳細については、「インデックスを作成する」をご参照ください。__tag__
フィールドの詳細については、「予約済みフィールド」をご参照ください。たとえば、次の文を使用して、ログに異なるホスト名が何回出現するかをクエリできます。* | select '__tag__:__hostname__' , count(1) as count group by '__tag__:__hostname__'
IP アドレスを使用してログをクエリするにはどうすればよいですか?
IP アドレスを使用してログをクエリします。
__tag__:__client_ip__:192.0.2.1
IP アドレスが 192.0.2. で始まるログをクエリします。
__source__:192.0.2.*
IP アドレスが
192.168.XX.XX
に一致するログをクエリします。正規表現を使用してあいまい一致を実行することもできます。詳細については、「あいまい一致を使用してログをクエリするにはどうすればよいですか?」をご参照ください。* | select * from log where key like '192.168.%.%'
2 つの条件を使用してログをクエリするにはどうすればよいですか?
2 つの条件を使用してログをクエリする場合は、一度に 2 つの文を指定します。
たとえば、Logstore 内で status フィールドが OK
でも Unknown
でもないログをクエリする場合、not OK not Unknown
を使用して条件を満たすログを取得できます。
Simple Log Service でログをクエリするにはどうすればよいですか?
Simple Log Service でログをクエリするには、次のいずれかの方法を使用できます。
Simple Log Service コンソールを使用してログをクエリします。Simple Log Service コンソールでログをクエリおよび分析する方法の詳細については、「ログのクエリと分析」をご参照ください。
Simple Log Service SDK を使用してログをクエリします。詳細については、「Simple Log Service SDK の概要」をご参照ください。
RESTful API 操作を使用してログをクエリします。詳細については、「GetLogs」をご参照ください。
Simple Log Service SDK を使用してログをクエリできますが、SDK を使用して SQL 分析を実行するとタイムアウトまたはネットワークエラーが発生します。どうすればよいですか?
考えられる原因は、クライアントのネットワーク ファイアウォール が、SQL 分析で使用されるキーワードを含むリクエストをインターセプトしていることです。
使用されている Simple Log Service エンドポイントを HTTPS で始まるエンドポイントに変更して、エラーがクライアントのネットワーク ファイアウォール によって発生しているかどうかを確認することをお勧めします。
ログをクエリおよび分析するときに、フィールド値が切り捨てられるのはなぜですか?
次のリストは、Simple Log Service でのクエリと分析のために保持できるフィールド値の長さの制限を示しています。
ログをクエリする場合、クエリのために保持できるフィールド値の最大長は 524,288 バイト (512 KB に相当) です。
ログを分析する場合、分析用に保持できるフィールド値のデフォルトの最大長は 2,048 バイト ( 2 KB) です。最大長は 16,384 バイト ( 16 KB) まで拡張できます。
フィールド値の最大長を変更する場合は、[最大統計フィールド長] パラメーターを構成できます。 64 ~ 16,384 バイトの範囲の値を指定できます。詳細については、「インデックスを作成する」をご参照ください。
フィールド値の長さが上限を超えた場合、フィールド値は切り捨てられ、超過部分はクエリまたは分析のために保持されません。
インデックスのないフィールドを分析するにはどうすればよいですか?
ログを分析したいが、必要なフィールドのインデックスが構成されていない場合、または構成できない場合は、次の操作を実行して問題を解決できます。
インデックスを構成するか、データを再インデックス化する
新しく書き込まれたログを分析する場合は、必要なフィールドのインデックスを構成し、フィールドの分析を有効にします。詳細については、「インデックスを作成する」をご参照ください。
履歴ログを分析する場合は、履歴ログで必要なフィールドを再インデックス化する必要があります。詳細については、「ログストアのログを再インデックス化する」をご参照ください。
スキャン機能を有効にする
インデックスを構成できない場合は、スキャン機能を有効にしてログを分析できます。詳細については、「スキャンベースの分析の概要」および「ログのスキャン」をご参照ください。
インデックスのないフィールドを分析するにはどうすればよいですか?
デフォルトでは、Simple Log Service は、クエリ文を実行するときに、LIMIT 100
句をクエリ文に追加します。 返される行数を変更する場合は、LIMIT 句を変更できます。 詳細については、「LIMIT 句」をご参照ください。