New Relic は組み込みのルールに従って一般的なログ形式を解析できるため、独自の解析ルールを作成する必要はありません。ログ解析ルール、 Grokパターン、および解析されるフィールドは次のとおりです。
- 組み込みのログ解析を有効にするには、
logtype
属性の追加に関するドキュメントを参照してください。 - プログラムで解析ルールを管理するには、GraphQL形式のAPIであるNerdGraphを api.newrelic.com/graphiql でご利用いただけます。詳細については、 NerdGraph チュートリアル を参照して、解析ルールの作成、照会、削除を行ってください。
Source: logtype = 'apache'
Grok:
%{IPORHOST:clientip} %{USER:ident} %{USER:auth} \[%{HTTPDATE:timestamp}\] "(?:%{WORD:verb} %{NOTSPACE:request}(?: HTTP/%{NUMBER:httpversion})?|%{DATA:rawrequest})" %{NUMBER:response} (?:%{NUMBER:bytes}|-) %{QS:referrer} %{QS:agent}
Results:
clientip
:クライアントのIPアドレス。verb
:HTTP動詞ident
:リクエストを行うクライアントのユーザーIDresponse
:応答のHTTPステータスコードrequest
:作成中のURIとリクエストhttpversion
:リクエストのHTTPバージョンrawrequest
:データが投稿された場合の生のHTTPリクエストbytes
:送信されたバイト数referrer
:HTTPリファラーagent
:クライアントのユーザーエージェント
Source: logtype = 'apache_error'
Grok:
\[%{DATA:apache_error.timestamp}\] \[%{WORD:apache_error.source}:%{DATA:level}\] \[pid %{NUMBER:apache_error.pid}(:tid %{NUMBER:apache_error.tid})?\] (%{DATA:apache_error.sourcecode}\(%{NUMBER:apache_error.linenum}\): )?(?:\[client %{IPORHOST:apache_error.clientip}:%{POSINT:apache_error.port}\] ){0,1}%{GREEDYDATA:apache_error.message}
Results:
apache_error.timestamp
:ログステートメントのタイムスタンプapache_error.source
:ソースモジュールlevel
:ログレベルapache_error.pid
:apache PID(プロセス識別子)apache_error.tid
:apache TID(スレッド識別子)apache_error.sourcecode
:apacheソースコードapache_error.linenum
:ソースコードの行番号apache_error.clientip
:クライアントのIPアドレスapache_error.port
:クライアントIPポート番号apache_error.message
:エラーメッセージ
Source: logtype = 'alb'
Grok:
^%{NOTSPACE:type} %{TIMESTAMP_ISO8601:time} %{NOTSPACE:elb} %{NOTSPACE:client_ip}:%{NOTSPACE:client_port} ((%{NOTSPACE:target_ip}:%{NOTSPACE:target_port})|-) %{NOTSPACE:request_processing_time} %{NOTSPACE:target_processing_time} %{NOTSPACE:response_processing_time} %{NOTSPACE:elb_status_code} %{NOTSPACE:target_status_code} %{NOTSPACE:received_bytes} %{NOTSPACE:sent_bytes} "%{DATA:request}" "%{DATA:user_agent}" %{NOTSPACE:ssl_cipher} %{NOTSPACE:ssl_protocol} %{NOTSPACE:target_group_arn} "%{DATA:trace_id}" "%{NOTSPACE:domain_name}" "%{NOTSPACE:chosen_cert_arn}" %{NOTSPACE:matched_rule_priority} %{TIMESTAMP_ISO8601:request_creation_time} "%{NOTSPACE:actions_executed}" "%{NOTSPACE:redirect_url}" "%{NOTSPACE:error_reason}" (?:"|)%{DATA:target_port_list}(?:"|) (?:"|)%{DATA:target_status_code_list}(?:"|) "%{NOTSPACE:classification}" "%{NOTSPACE:classification_reason}"
Results:
フィールド | 定義 |
---|---|
| リクエストまたはコネクションのタイプです。可能な値は
|
| ロードバランサーのリソースID。アクセスログエントリを解析する場合は、リソースIDにスラッシュ( |
| 要求しているクライアントのIPアドレス |
| 要求元のクライアントのIPポート |
| このリクエストを処理したターゲットのIPアドレス。
|
| このリクエストを処理したターゲットのIPポート。
|
| このリクエストを処理したターゲットのIPアドレスとポート。
|
| ロードバランサーがリクエストを受信してからターゲットに送信するまでの経過時間の合計(秒単位、ミリ秒の精度)。
|
| ロードバランサーがターゲットにリクエストを送信してから、ターゲットがレスポンスヘッダーの送信を開始するまでの経過時間の合計(秒単位、ミリ秒の精度)。
|
| ロードバランサーがターゲットからレスポンスヘッダーを受信してから、クライアントへのレスポンスの送信を開始するまでに経過した時間の合計(秒単位、ミリ秒の精度)。ロードバランサーでのキューイング時間と、ロードバランサーからクライアントへの接続取得時間の両方が含まれます。 ロードバランサーがターゲットにリクエストを送信できない場合、この値は |
| ロードバランサーからのレスポンスのステータスコード |
| ターゲットからの応答のステータスコード。この値は、ターゲットへの接続が確立され、ターゲットが応答を送信した場合にのみ記録されます。それ以外の場合は、 |
| クライアント(リクエスター)から受け取ったリクエストのサイズをバイト単位で表したもの。HTTPリクエストの場合、これにはヘッダーが含まれます。WebSocketの場合は、接続中のクライアントから受信したバイト数の合計です。 |
| クライアント(リクエスター)に送信されるレスポンスのサイズ(バイト)。HTTP リクエストの場合は、ヘッダーを含みます。WebSocket の場合は、接続中のクライアントに送信されたバイト数の合計です。 |
| HTTPリクエスト |
| 二重引用符で囲まれた、リクエストを発信したクライアントを識別するUser-Agent文字列。この文字列は、1つまたは複数の製品識別子、製品/バージョンで構成されます。文字列の長さが8KBを超える場合は、切り捨てられます。 |
| SSL暗号。リスナーがHTTPSリスナーでない場合、この値は |
| SSLプロトコル。リスナーがHTTPSリスナーでない場合、この値は |
| 対象グループのAmazon Resource Name (ARN) |
| 二重引用符で囲まれた |
| TLSハンドシェイク中にクライアントによって提供されたSNIドメインで、二重引用符で囲まれています。クライアントがSNIをサポートしていない場合、またはドメインが証明書と一致せず、デフォルトの証明書がクライアントに提示される場合、この値は |
| クライアントに提示する証明書のARNを二重引用符で囲んだもの。
|
| リクエストにマッチしたルールの優先度の値。
|
| ロードバランサーがクライアントからのリクエストを受信した時間(ISO 8601形式)。 |
| リクエストの処理時に実行されるアクション。二重引用符で囲まれています。この値は、 |
| 二重引用符で囲まれた、HTTP応答のロケーションヘッダーのリダイレクトターゲットのURL。リダイレクトアクションが実行されなかった場合、この値は |
| 二重引用符で囲まれたエラー理由コード。
|
| 分類。 |
| 分類理由。 |
ソース: logtype = 'cassandra'
Grok
%{WORD:level}%{SPACE}\\[%{NOTSPACE:cassandra.thread}\\] %{TIMESTAMP_ISO8601:cassandra.timestamp} %{NOTSPACE:cassandra.source}:%{INT:cassandra.line.number} - %{GREEDYDATA:cassandra.message}
結果
level
:メッセージのログレベル(すべて、トレース、デバッグ、情報、警告、エラー、オフ)cassandra.thread
:ログステートメントを発行するスレッドの名前cassandra.timestamp
:ログステートメントのタイムスタンプcassandra.source
:ソースファイル名cassandra.line.number
:メッセージの行番号cassandra.message
:生のカサンドラメッセージ
Source: logtype = 'cloudfront-web'
Grok:
^%{NOTSPACE:date}%{SPACE}%{NOTSPACE:time}%{SPACE}%{NOTSPACE:x_edge_location}%{SPACE}%{NOTSPACE:sc_bytes}%{SPACE}%{NOTSPACE:c_ip}%{SPACE}%{NOTSPACE:cs_method}%{SPACE}%{NOTSPACE:cs_host}%{SPACE}%{NOTSPACE:cs_uri_stem}%{SPACE}%{NOTSPACE:sc_status}%{SPACE}%{NOTSPACE:cs_referer}%{SPACE}%{NOTSPACE:cs_user_agent}%{SPACE}%{NOTSPACE:cs_uri_query}%{SPACE}%{NOTSPACE:cs_Cookie}%{SPACE}%{NOTSPACE:x_edge_result_type}%{SPACE}%{NOTSPACE:x_edge_request_id}%{SPACE}%{NOTSPACE:x_host_header}%{SPACE}%{NOTSPACE:cs_protocol}%{SPACE}%{NOTSPACE:cs_bytes}%{SPACE}%{NOTSPACE:time_taken}%{SPACE}%{NOTSPACE:x_forwarded_for}%{SPACE}%{NOTSPACE:ssl_protocol}%{SPACE}%{NOTSPACE:ssl_cipher}%{SPACE}%{NOTSPACE:x_edge_response_result_type}%{SPACE}%{NOTSPACE:cs_protocol_version}%{SPACE}%{NOTSPACE:fle_status}%{SPACE}%{NOTSPACE:fle_encrypted_fields}%{SPACE}%{NOTSPACE:c_port}%{SPACE}%{NOTSPACE:time_to_first_byte}%{SPACE}%{NOTSPACE:x_edge_detailed_result_type}%{SPACE}%{NOTSPACE:sc_content_type}%{SPACE}%{NOTSPACE:sc_content_len}%{SPACE}%{NOTSPACE:sc_range_start}%{SPACE}%{NOTSPACE:sc_range_end}
Results:
フィールド | 定義 |
---|---|
| リクエストを処理したエッジの場所。各エッジの位置は、3文字のコードと任意に割り当てられた番号によって識別されます。たとえば、 この3文字のコードは、通常、エッジの位置の近くにある空港の国際航空運送協会の空港コードに対応しています。(これらの略語は将来的に変更される可能性があります)。 |
| ヘッダーを含む、リクエストに応答してCloudFrontがビューアに提供した合計バイト数。たとえば、 |
| IPv4またはIPv6形式のいずれかで要求を行ったビューアのIPアドレス。ビューアがHTTPプロキシまたはロードバランサを使用してリクエストを送信した場合、 |
| HTTPリクエストメソッド: |
| CloudFrontディストリビューションのドメイン名。たとえば、 |
| パスとオブジェクトを識別するURIの部分。たとえば、 |
| HTTPステータスコード。たとえば、 |
| リクエストを発信したドメインの名前です。一般的なリファラーには、検索エンジン、あなたのオブジェクトに直接リンクしている他のウェブサイト、あなた自身のウェブサイトなどがあります。 |
| リクエストのUser-Agentヘッダーの値です。User-Agentヘッダーは、リクエストを送信したデバイスやブラウザの種類、該当する場合はどの検索エンジンかなど、リクエストの送信元を特定するものです。 |
| URIのクエリ文字列部分(存在する場合)。 URIにクエリ文字列が含まれていない場合、このフィールドの値はハイフン( |
| 名前と値のペアと関連する属性を含む、リクエストのクッキーヘッダ。
|
| 最後のバイトがエッジロケーションを離れた後、CloudFrontがレスポンスをどのように分類するか。場合によっては、CloudFrontがレスポンスを送信する準備ができてから、CloudFrontがレスポンスの送信を終了するまでの間に、結果タイプが変更されることがあります。 |
| リクエストを一意に識別する暗号化された文字列。応答ヘッダーでは、これは |
| 視聴者がこのリクエストのHostヘッダーに含めた値です。これは、リクエストのドメイン名です。
|
| ビューアがリクエストで指定したプロトコル: |
| 視聴者がリクエストに含めたデータのバイト数(ヘッダーを含む)です。WebSocket接続の場合は、その接続でクライアントからサーバーに送信されたバイト数の合計です。 |
| CloudFrontエッジサーバーが視聴者のリクエストを受信してから、CloudFrontがレスポンスの最後のバイトをエッジサーバーの出力キューに書き込むまでの秒数(1000分の1秒単位、例えば0.002)をサーバー上で計測したものです。 視聴者から見ると、ネットワークの遅延やTCPのバッファリングにより、完全なオブジェクトを取得するまでの総時間はこの値よりも長くなります。 |
| ビューアがHTTPプロキシまたはロードバランサを使用してリクエストを送信した場合、フィールド5の このフィールドには、必要に応じてIPv4アドレスとIPv6アドレスが含まれます。ビューアがHTTPプロキシまたはロードバランサを使用しなかった場合、 |
| フィールド17の
|
| フィールド17の
|
| 視聴者にレスポンスを返す直前に、CloudFrontがレスポンスをどのように分類したか。可能な値は以下の通りです。
|
| 視聴者がリクエストで指定したHTTPバージョン。可能な値は以下の通りです。
|
| ディストリビューションにフィールドレベルの暗号化が設定されている場合、このフィールドには、リクエストボディが正常に処理されたかどうかを示すコードが含まれます。 フィールドレベルの暗号化が配布用に構成されていない場合、値はハイフン( |
| CloudFrontが暗号化してオリジンに転送したフィールドの数。 CloudFrontは、データを暗号化するときに処理されたリクエストをオリジンにストリーミングするため、 フィールドレベルの暗号化が配布用に構成されていない場合、 |
| 視聴者からのリクエストのポート番号。 |
| リクエストを受信してからレスポンスの最初のバイトを書き込むまでの秒数で、サーバー上で計測されます。 |
|
|
| レスポンスのHTTP Content-Typeヘッダーの値です。 |
| レスポンスの HTTP Content-Length ヘッダの値です。 |
| レスポンスに HTTP Content-Range ヘッダーが含まれている場合、このフィールドにはレンジの開始値が含まれます。 |
| レスポンスに HTTP Content-Range ヘッダーが含まれている場合、このフィールドには range end の値が格納されます。 |
Source: logtype = 'cloudfront-rtl'
Grok:
^%{NOTSPACE:timestamp}.\d{3}%{SPACE}%{NOTSPACE:c_ip}%{SPACE}%{NOTSPACE:time_to_first_byte}%{SPACE}%{NOTSPACE:sc_status}%{SPACE}%{NOTSPACE:sc_bytes}%{SPACE}%{NOTSPACE:cs_method}%{SPACE}%{NOTSPACE:cs_protocol}%{SPACE}%{NOTSPACE:cs_host}%{SPACE}%{NOTSPACE:cs_uri_stem}%{SPACE}%{NOTSPACE:cs_bytes}%{SPACE}%{NOTSPACE:x_edge_location}%{SPACE}%{NOTSPACE:x_edge_request_id}%{SPACE}%{NOTSPACE:x_host_header}%{SPACE}%{NOTSPACE:time_taken}%{SPACE}%{NOTSPACE:cs_protocol_version}%{SPACE}%{NOTSPACE:cs_ip_version}%{SPACE}%{NOTSPACE:cs_user_agent}%{SPACE}%{NOTSPACE:cs_referer}%{SPACE}%{NOTSPACE:cs_cookie}%{SPACE}%{NOTSPACE:cs_uri_query}%{SPACE}%{NOTSPACE:x_edge_response_result_type}%{SPACE}%{NOTSPACE:x_forwarded_for}%{SPACE}%{NOTSPACE:ssl_protocol}%{SPACE}%{NOTSPACE:ssl_cipher}%{SPACE}%{NOTSPACE:x_edge_result_type}%{SPACE}%{NOTSPACE:fle_encrypted_fields}%{SPACE}%{NOTSPACE:fle_status}%{SPACE}%{NOTSPACE:sc_content_type}%{SPACE}%{NOTSPACE:sc_content_len}%{SPACE}%{NOTSPACE:sc_range_start}%{SPACE}%{NOTSPACE:sc_range_end}%{SPACE}%{NOTSPACE:c_port}%{SPACE}%{NOTSPACE:x_edge_detailed_result_type}%{SPACE}%{NOTSPACE:c_country}%{SPACE}%{NOTSPACE:cs_accept_encoding}%{SPACE}%{NOTSPACE:cs_accept}%{SPACE}%{NOTSPACE:cache_behavior_path_pattern}%{SPACE}%{NOTSPACE:cs_headers}%{SPACE}%{NOTSPACE:cs_header_names}%{SPACE}%{NOTSPACE:cs_headers_count}$
Results:
フィールド | 定義 |
---|---|
| エッジ サーバーが要求への応答を終了した日時。 |
| リクエストを行ったビューアーの IP アドレス (例: |
| リクエストを受信してからレスポンスの最初のバイトを書き込むまでの秒数で、サーバー上で計測されます。 |
| HTTPステータスコード。たとえば、 |
| リクエストに応じてサーバーがビューアに送信した合計バイト数 (ヘッダーを含む)。WebSocket 接続の場合、これは接続を通じてサーバーからクライアントに送信された合計バイト数です。 |
| ビューアから受け取った HTTP リクエスト メソッド。 |
| ビューアー要求のプロトコル (http、https、ws、または wss)。 |
| ビューアがリクエストの Host ヘッダーに含めた値。オブジェクト URL で CloudFront ドメイン名を使用している場合 (d111111abcdef8.cloudfront.net など)、このフィールドにはそのドメイン名が含まれています。オブジェクト URL ( www.example.comなど) で代替ドメイン名 (CNAME) を使用している場合、このフィールドには代替ドメイン名が含まれます。 |
| クエリ文字列 (存在する場合) を含むが、ドメイン名を含まない、要求 URL 全体。たとえば、 |
| ビューアーがリクエストに含めたデータの合計バイト数 (ヘッダーを含む)。WebSocket 接続の場合、これは接続でクライアントからサーバーに送信された合計バイト数です。 |
| リクエストを処理したエッジ ロケーション。各エッジ位置は、3 文字のコードと任意に割り当てられた番号 (DFW3 など) によって識別されます。通常、3 文字のコードは、エッジ ロケーションの地理的位置に近い空港の国際航空運送協会 (IATA) の空港コードに対応します。(これらの略語は将来変更される可能性があります。) |
| 最後のバイトがエッジロケーションを離れた後、CloudFrontがレスポンスをどのように分類するか。場合によっては、CloudFrontがレスポンスを送信する準備ができてから、CloudFrontがレスポンスの送信を終了するまでの間に、結果タイプが変更されることがあります。 |
| リクエストを一意に識別する不透明な文字列。CloudFront は、この文字列も x-amz-cf-id 応答ヘッダーで送信します。 |
| CloudFront ディストリビューションのドメイン名 (例: |
| サーバーで測定された、サーバーがビューアーの要求を受信してから、サーバーが応答の最後のバイトを出力キューに書き込むまでの秒数 (1000 分の 1 秒、たとえば 0.082)。ビューアの観点からは、完全な応答を取得するための合計時間は、ネットワークの遅延と TCP バッファリングのために、この値よりも長くなります。 |
| ビューアがリクエストで指定した HTTP バージョン。可能な値には、 |
| リクエストの IP バージョン (IPv4 または IPv6)。 |
| リクエストの User-Agent ヘッダーの値。User-Agent ヘッダーは、リクエストを送信したデバイスとブラウザのタイプ、またはリクエストが検索エンジンから来た場合はどの検索エンジンかなど、リクエストのソースを識別します。 |
| リクエストの Referer ヘッダーの値。これは、リクエストを発信したドメインの名前です。一般的なリファラーには、検索エンジン、オブジェクトに直接リンクする他の Web サイト、および独自の Web サイトが含まれます。 |
| 名前と値のペアおよび関連する属性を含む、リクエスト内の Cookie ヘッダー。 |
| リクエスト URL のクエリ文字列部分 (存在する場合)。 |
| サーバーが応答をビューアに返す直前にどのように分類したか。x-edge-result-type フィールドも参照してください。可能な値は次のとおりです。
|
| ビューアが HTTP プロキシまたはロード バランサを使用してリクエストを送信した場合、c-ip フィールドの値はプロキシまたはロード バランサの IP アドレスです。その場合、このフィールドはリクエストを発信したビューアの IP アドレスです。このフィールドには、IPv4 アドレス (例: |
| リクエストで HTTPS が使用された場合、このフィールドには、ビューアとサーバーがリクエストとレスポンスを送信するためにネゴシエートした SSL/TLS プロトコルが含まれます。 |
| リクエストが HTTPS を使用した場合、このフィールドには、ビューアとサーバーがリクエストとレスポンスを暗号化するためにネゴシエートした SSL/TLS 暗号が含まれます。 |
| 最後のバイトがサーバーを離れた後、サーバーがどのように応答を分類したか。場合によっては、サーバーが応答を送信する準備ができてから、応答の送信を終了するまでの間に、結果の型が変わることがあります。 可能な値は次のとおりです。
|
| サーバーが暗号化してオリジンに転送したフィールドレベルの暗号化フィールドの数。CloudFront サーバーは、データを暗号化するときに、処理されたリクエストをオリジンにストリーミングします。そのため、 |
| フィールド レベルの暗号化がディストリビューションに設定されている場合、このフィールドには、リクエスト ボディが正常に処理されたかどうかを示すコードが含まれます。サーバーがリクエスト本文を正常に処理し、指定されたフィールドの値を暗号化し、リクエストをオリジンに転送すると、このフィールドの値は Processed になります。この場合、 このフィールドの可能な値は次のとおりです。 *
|
| レスポンスのHTTP Content-Typeヘッダーの値です。 |
| レスポンスの HTTP Content-Length ヘッダの値です。 |
| レスポンスに HTTP Content-Range ヘッダーが含まれている場合、このフィールドにはレンジの開始値が含まれます。 |
| レスポンスに HTTP Content-Range ヘッダーが含まれている場合、このフィールドには range end の値が格納されます。 |
| 視聴者からのリクエストのポート番号。 |
|
|
| 視聴者の IP アドレスによって決定される、視聴者の地理的な場所を表す国コード。 |
| ビューア リクエストの |
| ビューア リクエストの |
| ビューアのリクエストに一致したキャッシュ動作を識別するパス パターン。 |
| ビューアー リクエストの HTTP ヘッダー (名前と値)。 |
| ビューアー リクエストの HTTP ヘッダーの名前 (値ではない)。 |
| ビューア リクエストの HTTP ヘッダーの数。 |
Source: logtype = 'elb'
Grok:
^%{TIMESTAMP_ISO8601:time} %{NOTSPACE:elb} %{NOTSPACE:client_ip}:%{NOTSPACE:client_port} ((%{NOTSPACE:backend_ip}:%{NOTSPACE:backend_port})|-) %{NOTSPACE:request_processing_time} %{NOTSPACE:backend_processing_time} %{NOTSPACE:response_processing_time} %{NOTSPACE:elb_status_code} %{NOTSPACE:backend_status_code} %{NOTSPACE:received_bytes} %{NOTSPACE:sent_bytes} "%{DATA:request}" "%{DATA:user_agent}" %{NOTSPACE:ssl_cipher} %{NOTSPACE:ssl_protocol}
Results:
フィールド | 定義 |
---|---|
| リクエストを処理したエッジの場所。各エッジの位置は、3文字のコードと任意に割り当てられた番号によって識別されます。たとえば、 |
| ヘッダーを含む、リクエストに応答してCloudFrontがビューアに提供した合計バイト数。たとえば、 |
| リクエストを行ったビューアのIPアドレス。ビューアがHTTPプロキシまたはロードバランサを使用してリクエストを送信した場合、 |
| HTTPリクエストメソッド: |
| CloudFrontディストリビューションのドメイン名。たとえば、 |
| パスとオブジェクトを識別するURIの部分。たとえば、 |
| HTTPステータスコード(たとえば、 CloudFrontがレスポンスの送信を開始した後にビューアーが接続を閉じた場合、ログには該当するHTTPステータスコードが含まれます。 |
| リクエストを発信したドメインの名前です。一般的なリファラーには、検索エンジン、あなたのオブジェクトに直接リンクしている他のWebサイト、あなた自身のWebサイトなどがあります。 |
| リクエストのUser-Agentヘッダーの値です。User-Agentヘッダーは、リクエストを送信したデバイスやブラウザの種類、該当する場合はどの検索エンジンかなど、リクエストの送信元を特定するものです。 |
| URIのクエリ文字列部分(存在する場合)。 URIにクエリ文字列が含まれていない場合、このフィールドの値はハイフン( |
| 名前と値のペアと関連する属性を含む、リクエストのクッキーヘッダ。
|
| 最後のバイトがエッジロケーションを離れた後、CloudFrontがレスポンスをどのように分類するか。場合によっては、CloudFrontがレスポンスを送信する準備ができてから、CloudFrontがレスポンスの送信を終了するまでの間に、結果タイプが変更されることがあります。 |
| リクエストを一意に識別する暗号化された文字列。応答ヘッダーでは、これは |
| 視聴者がこのリクエストのHostヘッダーに含めた値です。これは、リクエストのドメイン名です。
|
| ビューアがリクエストで指定したプロトコル: |
| 視聴者がリクエストに含めたデータのバイト数(ヘッダーを含む)です。WebSocket接続の場合は、その接続でクライアントからサーバーに送信されたバイト数の合計です。 |
| CloudFrontエッジサーバーが視聴者のリクエストを受信してから、CloudFrontがレスポンスの最後のバイトをエッジサーバーの出力キューに書き込むまでの秒数(1000分の1秒単位、例えば0.002)をサーバー上で計測したものです。 視聴者から見ると、ネットワークの遅延やTCPのバッファリングにより、完全なオブジェクトを取得するまでの総時間はこの値よりも長くなります。 |
| ビューアがHTTPプロキシまたはロードバランサを使用してリクエストを送信した場合、フィールド5の ビューアがHTTPプロキシまたはロードバランサを使用しなかった場合、 |
| フィールド17の
|
| フィールド17の
|
| 視聴者にレスポンスを返す直前に、CloudFrontがレスポンスをどのように分類したか。可能な値は以下の通りです。
|
| 視聴者がリクエストで指定したHTTPバージョン。可能な値は以下の通りです。
|
| フィールドレベルの暗号化がディストリビューションに設定されている場合、このフィールドには、リクエスト本文が正常に処理されたかどうかを示すコードが含まれます。フィールドレベルの暗号化が配布用に構成されていない場合、このフィールドの値はハイフン( CloudFrontがリクエスト本文を正常に処理し、指定されたフィールドの値を暗号化し、リクエストをオリジンに転送すると、このフィールドの値は リクエストがフィールドレベルの暗号化制限を超えた場合、 |
| CloudFrontが暗号化してオリジンに転送したフィールドの数。 CloudFrontは、データを暗号化するときに処理されたリクエストをオリジンにストリーミングするため、 フィールドレベルの暗号化が配布用に構成されていない場合、 |
| 視聴者からのリクエストのポート番号。 |
| リクエストを受信してからレスポンスの最初のバイトを書き込むまでの秒数で、サーバー上で計測されます。 |
|
|
| レスポンスのHTTP Content-Typeヘッダーの値です。 |
| レスポンスの HTTP Content-Length ヘッダの値です。 |
| レスポンスに HTTP Content-Range ヘッダーが含まれている場合、このフィールドにはレンジの開始値が含まれます。 |
| レスポンスに HTTP Content-Range ヘッダーが含まれている場合、このフィールドには range end の値が格納されます。 |
Source: logtype = 'haproxy_http'
Grok:
%{HOSTPORT:client} \\[%{NOTSPACE:haproxy_timestamp}\\] %{NOTSPACE:frontend_name} %{NOTSPACE:backend_name}/%{NOTSPACE:server_name} %{NUMBER:time_queue}/%{NUMBER:time_backend_connect}/%{NUMBER:time_duration} %{NUMBER:bytes_read} %{NOTSPACE:termination_state} %{NUMBER:actconn}/%{NUMBER:feconn}/%{NUMBER:beconn}/%{NUMBER:srvconn}/%{NUMBER:retries} %{NUMBER:srv_queue}/%{NUMBER:backend_queue}
%{HOSTPORT:client} \\[%{NOTSPACE:haproxy_timestamp}\\] %{NOTSPACE:frontend_name} %{NOTSPACE:backend_name}/%{NOTSPACE:server_name} %{NUMBER:time_client_req}/%{NUMBER:time_queue}/%{NUMBER:time_backend_connect}/%{NUMBER:time_server_response}/%{NUMBER:time_duration} %{NUMBER:status_code} %{NUMBER:bytes_read} %{NOTSPACE:captured_request_cookie} %{NOTSPACE:captured_response_cookie} %{NOTSPACE:termination_state_with_cookie_status} %{NUMBER:actconn}/%{NUMBER:feconn}/%{NUMBER:beconn}/%{NUMBER:srvconn}/%{NUMBER:retries} %{NUMBER:srv_queue}/%{NUMBER:backend_queue}?( \\\"%{GREEDYDATA:full_http_request}\\\")?( %{NOTSPACE:captured_response_headers})?
Results:
client
:このリクエストの送信元IP/ポートhaproxy_timestamp
:このリクエストが受け入れられたときのタイムスタンプfrontend_name
:このリクエストで使用されたフロントエンドの名前backend_name
:このリクエストで使用されたバックエンドの名前server_name
:このリクエストで使用されたバックエンドグループのサーバー名time_client_req
:クライアントからの完全な要求を待機する時間(ミリ秒)time_queue
:キューでの待機時間(ミリ秒)time_backend_connect
:宛先サーバーへの接続を確立する時間(ms)time_server_response
:宛先サーバーが応答を送信する時間(ミリ秒)time_duration
:HAProxyでアクティブなリクエストの合計時間(ミリ秒)status_code
:HTTP応答コードbytes_read
:このリクエストで読み取られた合計バイト数captured_request_cookie
:リクエストからキャプチャされたCookiecaptured_response_cookie
:応答からキャプチャされたCookietermination_state
:切断時のセッション状態termination_state_with_cookie_status
:切断時のCookieステータスを含むセッション状態actconn
:アクティブな接続feconn
: フロントエンド接続beconn
: バックエンド接続srvconn
:サーバー接続retries
:再試行srv_queue
:サーバーキューサイズbackend_queue
: バックエンド キュー サイズfull_http_request
:完全なHTTPリクエストラインcaptured_response_headers
:応答からキャプチャされたヘッダー
Source: logtype = 'ktranslate-health'
Grok:
%{NOTSPACE:timestamp} ktranslate(/)?(%{GREEDYDATA:container_service})? \[%{NOTSPACE:severity}] %{GREEDYDATA:message}
Results:
timestamp
:ログの時間container_service
:ktranslateでコンテナを区別するために使用される一意の識別子。これは、Dockerの実行時にオプションの--service_name
フラグを使用して設定されますseverity
:ログ行の重大度message
:メッセージフィールドには、イベントに関する情報を提供する自由形式のメッセージが含まれます
Source: logtype = 'linux_cron'
Grok:
%{SYSLOGTIMESTAMP:linux_cron.timestamp} %{NOTSPACE:linux_cron.hostname} %{DATA:linux_cron.process}(\[%{NUMBER:linux_cron.pid:integer}\])?: (\(%{DATA:linux_cron.user}\))?%{GREEDYDATA:linux_cron.message}
Results:
linux_cron.timestamp
:ログの時間linux_cron.hostname
:Linuxサーバーのホスト名linux_cron.process
:Linuxcronプロセス名linux_cron.pid
:Linux cron PID(プロセス識別子)linux_cron.user
:cronを実行したLinuxユーザーlinux_cron.message
:ログメッセージ
Source: logtype = 'linux_messages'
Grok:
%{SYSLOGTIMESTAMP:linux_messages.timestamp} %{NOTSPACE:linux_messages.hostname} %{DATA:linux_messages.process}(\[%{NUMBER:linux_messages.pid:integer}\])?: %{GREEDYDATA:linux_messages.message}
Results:
linux_messages.timestamp
:ログの時間linux_messages.hostname
:Linuxサーバーのホスト名linux_messages.process
:Linuxプロセス名linux_messages.pid
:Linux PID(プロセス識別子)linux_messages.message
:ログメッセージ
Source: logtype = 'iis_w3c'
Grok:
%{TIMESTAMP_ISO8601:log_timestamp} %{NOTSPACE:server_ip} %{WORD:method} %{NOTSPACE:uri} %{NOTSPACE:uri_query} %{NOTSPACE:server_port} %{NOTSPACE:username} %{NOTSPACE:client_ip} %{NOTSPACE:user_agent} %{NOTSPACE:referer} %{NOTSPACE:status} %{NOTSPACE:substatus} %{NOTSPACE:win32_status} %{NOTSPACE:time_taken}
Results:
IISでは、いくつかの構成オプションを使用できます。デフォルト以外のオプションを構成した場合、Grokパターンはログを解析しません。この場合、カスタム解析を使用することをお勧めします。
Source: logtype = 'mongodb'
Grok:
%{TIMESTAMP_ISO8601:mongodb.timestamp} %{WORD:mongodb.severity} %{WORD:mongodb.component} *\[%{WORD:mongodb.context}\] %{GREEDYDATA:mongodb.message}
Results:
mongodb.timestamp
:ログステートメントのタイムスタンプmongodb.severity
:ログステートメントの重大度レベル(F =致命的、E =エラー、W =警告、I =情報、D1-5 =デバッグ)mongodb.component
:ログステートメントを発行するスレッドのカテゴリmongodb.context
:ログステートメントを発行するスレッドの名前mongodb.message
:生のmongodbメッセージ
Source: logtype = 'monit'
Grok:
\\[%{NOTSPACE:tz} %{SYSLOGTIMESTAMP:nr_timestamp}\\] %{WORD:state}%{SPACE}: %{GREEDYDATA:message}
Results:
state
:ログ行の重大度message
: メッセージ
Source: logtype = 'mysql-error'
Grok:
\\[%{WORD:log_level}\\]
Results:
log_level
:ログ行の重大度
Source: logtype = 'nginx'
Grok:
%{IPORHOST:clientip} %{USER:ident} %{USER:auth} \[%{HTTPDATE:timestamp}\] "(?:%{WORD:verb} %{NOTSPACE:request}(?: HTTP/%{NUMBER:httpversion})?|%{DATA:rawrequest})" %{NUMBER:response} (?:%{NUMBER:bytes}|-) %{QS:referrer} %{QS:agent}
Results:
clientip
:クライアントのIPアドレスverb
:HTTP動詞ident
:リクエストを行うクライアントのユーザーIDresponse
:応答のHTTPステータスコードrequest
:作成中のURIとリクエストhttpversion
:リクエストのHTTPバージョンrawrequest
:データが投稿された場合の生のHTTPリクエストbytes
:送信されたバイト数referrer
:HTTPリファラーagent
:クライアントのユーザーエージェント
Source: logtype = 'nginx-error'
Grok:
^(?<timestamp>%{YEAR:year}[./-]%{MONTHNUM:month}[./-]%{MONTHDAY:day}[- ]%{TIME:time}) \[%{WORD:severity}\] %{POSINT:pid}#%{NUMBER}: \*%{NUMBER} %{GREEDYDATA:errormessage} client: %{IPORHOST:client}, server: %{NOTSPACE:server}, request: (\\)?"%{DATA:request}", (?:, upstream: \"%{URI:upstream}\")?host: (\\)?"%{NOTSPACE:host}(\\)?"(, referrer: (\\)?"%{URI:referrer}(\\)?")?
Results:
severity
:ログ行の重大度pid
:サーバープロセスIDerrormessage
:エラーメッセージclientip
:呼び出し元クライアントのIPアドレスserver
:サーバーのIPアドレスrequest
:完全なリクエストupstream
:アップストリームURIhost
:サーバーのホスト名referrer
:HTTPリファラー
ソース: logtype = 'postgresql'
Grok:
%{DATA:postgresql.timestamp} \[%{NUMBER:postgresql.pid}\] %{WORD:level}:\s+%{GREEDYDATA:postgresql.message}
結果
postgresql.timestamp
:ログのタイムスタンプpostgresql.pid
:サーバープロセスIDlevel
:メッセージのログレベルpostgresql.message
:ログメッセージ
Source: logtype = 'rabbitmq'
Grok:
%{TIMESTAMP_ISO8601:rabbitmq.timestamp} \[%{LOGLEVEL:level}\] \<%{DATA:rabbitmq.pid}\> %{GREEDYDATA:rabbitmq.message}
Results:
rabbitmq.timestamp
:ログのタイムスタンプlevel
:メッセージのログレベル(デバッグ、情報、警告、エラー、クリティカル、なし)rabbitmq.pid
:ログ行のプロセスIDrabbitmq.message
:rabbitmqエラーメッセージ
Source: logtype = 'redis'
Grok:
%{POSINT:redis.pid}:%{NOTSPACE:redis.role} (?<redistimestamp>[\d-]+ [a-zA-Z]+ [\d]+ [\d:]+.[\d]{3}) %{NOTSPACE:level} %{GREEDYDATA:redis.message}
Results:
redis.pid
:ログ行のプロセスIDredis.role
:インスタンスのロール(Xセンチネル、C RDB / AOF書き込み子、Sスレーブ、Mマスター)redistimestamp
:ログのタイムスタンプlevel
:メッセージのログレベル(。debug、-verbose、* Notice、#warning)redis.message
:redisエラーメッセージ
Source: logtype = 'route-53'
Grok:
%{NUMBER:log_format_version} %{TIMESTAMP_ISO8601} %{WORD:zone_id} %{IPORHOST:query} %{WORD:query_type} %{WORD:response_code} %{WORD:protocol} %{WORD:edge_location} %{IP:resolver_ip} %{GREEDYDATA:edns_client_subnet}
Results:
log_format_version
:ログのバージョン管理された形式。zone_id
:このログのすべてのDNSクエリに関連付けられているホストゾーンのID。query
:リクエストで指定されたドメインまたはサブドメイン。query_type
:リクエストで指定されたDNSレコードタイプ、またはANY
のいずれか。response_code
:DNSクエリに応答してRoute53が返したDNS応答コード。protocol
:クエリの送信に使用されたプロトコル(TCPまたはUDP)。edge_location
:クエリに応答したRoute53エッジの場所。各エッジの位置は、3文字のコードと任意の番号で識別されます。たとえば、DFW3
。 3文字のコードは通常、エッジロケーションに近い空港の国際航空運送協会の空港コードに対応しています。 (これらの略語は将来変更される可能性があります。)resolver_ip
:Route53にリクエストを送信したDNSリゾルバーのIPアドレス。edns_client_subnet
:DNSリゾルバーから利用可能な場合、要求の発信元のクライアントの部分的なIPアドレス。
Source: logtype = 'syslog-rfc5424'
Grok:
<%{NONNEGINT:pri}>%{NONNEGINT:version} +(?:%{TIMESTAMP_ISO8601:log.timestamp}|-) +(?:%{HOSTNAME:hostname}|-) +(?:\\-|%{NOTSPACE:app.name}) +(?:\\-|%{NOTSPACE:procid}) (?:\\-|%{NOTSPACE:msgid}) +(?:\[%{DATA:structured.data}\]|-|) +%{GREEDYDATA:message}
Results:
pri
:優先度は、メッセージ機能と重大度の両方を表します。version
:Syslogプロトコルバージョン。log.timestamp
:元のタイムスタンプ。hostname
:最初にSyslogメッセージを送信したマシン。app.name
:メッセージを発信したデバイスまたはアプリケーション。procid
:Syslogシステムに関連付けられているプロセス名またはプロセスID。msgid
:メッセージのタイプを識別します。structured.data
:構造化データ文字列値。sd.sd-id.sd-param-name
:structured.data
コンテンツも、事前定義された命名規則に従って個別の属性に解析されます:sd.sd-id.sd-param-name
。以下の構造化データ解析の例を参照してください。message
:イベントに関する情報を提供する自由形式のメッセージ。
Structured data parsing examples:
構造化データ[example one="1" two="2"]
は、次の2つの異なる属性に解析されます。
sd.example.one: "1"sd.example.two: "2"
同じ構造化データブロックに重複するパラメータ名が含まれている場合は、属性名にインデックスベースのサフィックスも追加されます。たとえば、構造化データ[example number="1" number="2"]
は次のように解析されます。
sd.example.number.0: "1"sd.example.number.1: "2"
エンタープライズ番号が割り当てられた構造化データの場合、追加の属性も解析されます。たとえば、構造化データ[example@123 number="1"]
は次のように解析されます。
sd.example.enterprise.number: 123sd.example.number: "1"