LoginSignup
1
1

More than 5 years have passed since last update.

CloudfrontのCloudFront Cache Statistics Reportsで'Errors'が計測されたので調べた

Posted at

前提的な話

  • AWSのcloudfrontをかる〜く試していた
    • static file(CSS,JS,IMGとか)の配信で試してた
  • 試している途中でコンソール画面(CloudFront Cache Statistics Reports)を眺めていたらErrorがカウントされていた
  • 説明をみてみると下記のように書いてる

Error: A viewer request that resulted in an error, so CloudFront did not serve the object. In access logs, the value of x-edge-response-result-type is Error, LimitExceeded, or CapacityExceeded.

ちょっと気になったので調べる

  • cloudfrontのloging設定をonにしてs3バケットに出力させる
  • そのログでErrorとなってるログをピックアップしてみてみる
2016-10-06  12:02:34    NRT53   462 IPが書かれてる   GET ****.cloudfront.net /favicon.ico    403 リファラーが書かれている    Mozilla/5.0%2520(Macintosh;%2520Intel%2520Mac%2520OS%2520X%252010_11_6)%2520AppleWebKit/537.36%2520(KHTML,%2520like%2520Gecko)%2520Chrome/53.0.2785.116%2520Safari/537.36   -   -   Error   ********    hostが書かれてる  https   199 0.043   -   ssl-cipherが書かれている Error   HTTP/2.0
2016-10-06  12:03:22    NRT53   470 IPが書かれてる   GET ****.cloudfront.net /favicon.ico    403 リファラーが書かれている    Mozilla/5.0%2520(Macintosh;%2520Intel%2520Mac%2520OS%2520X%252010_11_6)%2520AppleWebKit/537.36%2520(KHTML,%2520like%2520Gecko)%2520Chrome/53.0.2785.116%2520Safari/537.36   -   -   Error   ********    hostが書かれてる  https   240 0.004   -   ssl-cipherが書かれている Error   HTTP/2.0
2016-10-06  18:03:07    SFO20   592 IPが書かれてる   GET ****.cloudfront.net /robots.txt     403 -   Mozilla/5.0%2520(compatible;%2520Googlebot/2.1;%2520+http://www.google.com/bot.html)    -   -   Error   ********    hostが書かれている   https   227 0.440   -   ssl-cipherが書かれている Error   HTTP/1.1

調べてみての結果

  • そもそもcloudfront(=S3)に載せていないファイル(favicon.ico/robots.txt)にアクセスしようとしてhttp statusの403を返している
  • もともとファイル無いし気にする事ではなかった
  • 内部リンクでのfavicon.icoへのリンクは無いので、クローラー系かな or ブラウザとかの機能でfaviconとかにアクセスするのかなぁ?と想像
  • x-edge-result-typeとx-edge-response-result-typeという項目があり、重要さに気づいた。下記の注意でまとめる

注意

  • x-edge-result-typeとx-edge-response-result-typeのステータスの値
    • x-edge-result-type
      • 最終的な結果タイプ
    • x-edge-response-result-type
      • CloudFront がリクエストに応答し始める直前の結果タイプ
  • んーまぁリクエストを投げて、ダウンロードを始める際のstatusとダウンロードし終わったときのstatusみたいなもんかな
  • なんでこんな内訳をしているかと考えるとcloudfrontでストリーミング配信をした時とかにちゃんと最後まで配信できたかを計測する為かなと

まとめ的なもの

  • http status,uri,x-edge-result-type,x-edge-response-result-typeの値を可視化しておいた方が安心
    • この4つの項目を一緒にみて、何か問題があるのかというジャッジができそう
  • アクセスログを簡単に可視化する仕組みちょっと面倒いなー。でも地味に重要なんだよなーと思ったり
  • favicon.icoとかrobots.txtとか置いておいた方が無難かもしれない
    • Errorカウントされてしまうし、気づかないといけない本来のErrorを見つけやすくするべきだし
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1