このトピックでは、Simple Log Serviceコンソールでログをクエリおよび分析するときに返される一般的なエラーメッセージについて説明し、エラーの解決策を提供します。
行1:44: 列 'XXX' は解決できません。インデックス属性に列を追加してください
原因
XXXフィールドにはインデックスが設定されていません。
解決策
インデックスを設定し、フィールドのログ分析機能を有効にします。 詳細については、「インデックスの作成」をご参照ください。
ErrorType:QueryParseError.ErrorMessage: 構文エラーの位置は列: 10から列: 11まで、エラーは近く < : >
原因
クエリ文の構文が無効です。 無効な構文の位置はコロン (:) の近くです。
解決策
クエリ文を確認して変更し、新しいクエリ文を実行します。
GROUP BY句にない列 'XXX' 。インデックス属性に列を追加してください
原因
分析ステートメントでGROUP BY句を使用する場合、システムは、SELECTステートメントを実行するときに、GROUP BY句に含まれる列のみを照会したり、任意の列に対して集計を実行したりできます。 たとえば、request_timeはGROUP BY列ではないため、
* | SELECT status, request_time, COUNT(*) AS PV GROUP BY status
は無効な分析ステートメントです。解決策
クエリ文を変更し、新しいクエリ文を実行します。 上記のクエリステートメントとは対照的に、次のクエリステートメントが有効です。
* | SELECT status, arbitrary(request_time), count(*) AS PV GROUP BY status
詳細については、「GROUP BY句」をご参照ください。
sqlクエリは検索クエリに従う必要があります。構文docをお読みください
原因
分析ステートメントのみが指定されます。 Simple Log Serviceでは、
search statement | analytic statement
形式の検索ステートメントと一緒に分析ステートメントを使用する必要があります。解決策
分析ステートメントの前に検索ステートメントを追加します。 例:
* | SELECT status, count(*) AS PV GROUP BY status
詳細については、「構文」をご参照ください。
行1:10: 識別子は数字で始めてはいけません。識別子を二重引用符で囲む
原因
分析文で指定されている列名または変数名が数字で始まるため、分析文の構文が無効です。 SQL標準に準拠して、分析ステートメントで指定された列名には、英字、数字、およびアンダースコア (_) を含めることができます。
解決策
エイリアスを変更します。 詳細については、「列エイリアス」をご参照ください。
行1:9: 無関係な入力 ''期待
原因
追加の中国語引用符がクエリ文で指定されます。
解決策
クエリ文を確認して変更し、新しいクエリ文を実行します。
key (XXX) がキー値設定として設定されていません。symbol: がログにある場合は、引用符付きでラップしてください。
原因
XXXフィールドにフィールドインデックスが設定されていないか、指定したフィールドにスペースなどの特殊文字が含まれていますが、二重引用符 ("") で囲まれていません。
解決策
フィールドインデックスがフィールドに設定されているかどうか、およびフィールドに対してログ分析機能が有効になっているかどうかを確認します。
はいの場合、次のステップに進みます。
いいえの場合、フィールドインデックスを設定し、フィールドのログ分析機能を有効にします。 詳細については、「手動でフィールドインデックスを作成」をご参照ください。
エラーが解決された場合は、次の手順をスキップします。
フィールドを二重引用符 ("") で囲みます。
クエリの最大メモリサイズが3GBを超えました
原因
クエリ文で使用されるメモリのサイズが3 GBを超えています。 このエラーは、GROUP BY句を使用して重複を削除すると、クエリおよび分析結果に多数の値が返されるために発生します。
解決策
GROUP BY句を最適化します。 GROUP BY句で指定するフィールドの数を減らします。
ErrorType:ColumnNotExists.ErrorPosition,line:0,column:1.ErrorMessage:line 1:123: Column 'XXX' は解決できません。XXXは "によってラッパーされているようです。XXXがキーフィールドではなく文字列の場合は、'XXX' を使用してください。
原因
XXXはインデックス付きフィールドではなく、二重引用符 ("") で囲むことはできません。 分析ステートメントで文字列を使用する場合は、文字列を単一引用符 ('') で囲む必要があります。 二重引用符 (") で囲まれていない、または囲まれている文字列は、フィールド名または列名を示します。
解決策
分析するフィールドがXXXの場合は、必ずインデックスを設定し、そのフィールドのログ分析機能を有効にしてください。 詳細については、「インデックスの作成」をご参照ください。
XXXが文字列の場合、文字列を単一引用符 ('') で囲む必要があります。
ユーザーは15クエリのみ同時に実行できます
原因
15を超える分析操作が同時に実行されます。 各プロジェクトは、最大15の同時分析操作をサポートします。
解決策
ビジネス要件に基づいて、同時分析操作の数を減らします。
閉じられていない文字列の引用
原因
クエリ文の二重引用符 (") は不完全です。
解決策
クエリ文を確認して変更し、新しいクエリ文を実行します。
error after :.error detail:error after :.error detail:line 1:147: mismatch input 'in' expected {<EOF>, 'GROUP ', 'ORDER, 'HAVING', 'LIMIT', 'OR', 'AND', 'UNION ', 'EXCEPT', ''INTERSECT'}
原因
invalidキーワードが指定されています。
解決策
クエリ文を確認して変更し、新しいクエリ文を実行します。
重複キー (XXX) は使用できません
原因
重複インデックスはフィールドに対して設定されます。
解決策
インデックス設定を確認します。 詳細については、「インデックスの作成」をご参照ください。
サポートのみ * または? クエリの中央または最後に
原因
あいまい検索を実行すると、ワイルドカード文字は予想される位置では使用されません。
解決策
クエリ文のワイルドカード文字を変更します。 以下の点にご注意ください。
キーワードの中央または末尾にアスタリスク (*) または疑問符 (?) をワイルドカード文字として追加して、あいまい検索を実行できます。
単語の先頭にアスタリスク (*) または疑問符 (?) を追加することはできません。
アスタリスク (*) または疑問符 (?) は、long型またはdouble型のデータのファジー検索ではサポートされません。
logstore (xxx) が見つかりません
原因
XXX Logstoreが存在しないか、インデックスが設定されていません。
解決策
Logstoreが存在するかどうかを確認します。 Logstoreが存在する場合は、少なくとも1つのフィールドにインデックスを設定し、そのフィールドのログ分析機能を有効にする必要があります。
条件番号43は30以上です
原因
検索文で指定されているフィールドの数は43です。 検索文には最大30のフィールドを指定できます。
解決策
検索文を変更し、フィールド数が30以下であることを確認します。
ErrorType:SyntaxError.ErrorPosition,line:1,column:19.ErrorMessage:line 1:19: 式 "data" はROW型ではありません
原因
クエリ文で指定されたフィールドのデータ型が無効です。
解決策
クエリ文を確認して変更し、新しいクエリ文を実行します。
ErrorType:SyntaxError.ErrorPosition,line:1,column:9.ErrorMessage:line 1:9: identifiersには ':' を含めることはできません。
原因
分析するフィールドにコロン (:) が含まれています。
解決策
フィールドを二重引用符 ("") で囲みます。 たとえば、
__tag __:__ receive_time__
フィールドを分析する場合は、* | select "__tag __:__ receive_time__"
を使用できます。重要フィールドを分析する前に、フィールドのインデックスを作成する必要があります。 詳細については、「手動でフィールドインデックスを作成」をご参照ください。
クエリの実行に使用できるノードがありません
原因
内部エラーが発生しました。
解決策
ページを更新し、クエリ文を再度実行します。