ラボ 4 - conditional operator
このラボでは、ログ検索内で条件ロジック (If/then) を使用する方法について説明します。
conditional operator を使用すると、if/then オペレーションを行うことができます。
-
Labs/Apache/Access ログで過去 60 分のメッセージを検索して、正常に完了した HTTP リクエスト (status_code=200) とエラーとなった HTTP リクエスト (status_code=404) の数を返すクエリを作成します。
_sourceCategory=Labs/Apache/Access
| parse "HTTP/1.1\" * " as status_code
| if(status_code=200, 1, 0) as successes
| if(status_code=404, 1, 0) as client_errors
| sum(successes) as success_cnt, sum(client_errors) as client_errors_cnt
-
Labs/Apache/Access ログで過去 60 分のメッセージを検索して、クライアント エラー (status_code=4*) とサーバ エラー (status_code=5*) の数を返すクエリを作成します。
_sourceCategory=Labs/Apache/Access
| parse "HTTP/1.1\" * " as status_code
| if(status_code matches "4*", 1, 0) as client_err
| if(status_code matches "5*", 1, 0) as server_err
| sum(server_err) as server_errors_cnt, sum(client_err) as client_errors_cnt