Upgrade to Pro — share decks privately, control downloads, hide ads and more …

LogAnalyticsによるブログアクセスの見える化

YuYu
February 27, 2021

 LogAnalyticsによるブログアクセスの見える化

Azureリソースの一つであるLogAnalyticsを用いてブログアクセスの見える化を試みました。Microsoft Standard SKUでは、CDNアクセスの生ログが拾えます。このことを利用し、LogAnalyticsでデータのサマライズ及びグラフ化を行い、よりブログアクセスの内容を把握しやすくなるようにしてみました。

YuYu

February 27, 2021
Tweet

More Decks by YuYu

Other Decks in Technology

Transcript

  1. BLUECORE.NET 趣味で自宅にITインフラ触ってる者だ BLUECORE.NET 趣味で自宅にITインフラ触ってる者だ 今回やろうとしていること • 我がブログサーバに対するアクセス状況の見える化をしたい • ELKやSplunk等あるけれど、Azureで動かしてるリソースに関してはやっぱりLogAnalyticsが便利。 •

    過去に散々ELK/Splunkで挑めど、うまく使いこなせずに挫折した過去がたくさん・・・ • 見える化にたどり着くまでの手順について簡単に示す • LogAnalyticsはログ収集・分析を行うためのツール • 診断ログなどは予め決められたスキーマに従って既にデータが分割されている • ELKのようにgrokを書かなくてすむ • ただし、Nginxのログに関してはそのままではRawDataとして丸っと取り込まれているので、カスタムフィールドを 利用して自力でデータ抽出をする必要がある。 • Syslog及びApacheログに関してはどうやら素直にデータが取れそう • LogAnalyticsのKQLを用いてログのサマライズを実施 • ログをサマライズして、グラフ出力を可能にする • ブックを用いて複数のグラフを1枚のレポートとしてまとめる • 複数のグラフを視界に収められるようにまとめ、動向を把握する
  2. BLUECORE.NET 趣味で自宅にITインフラ触ってる者だ BLUECORE.NET 趣味で自宅にITインフラ触ってる者だ LogAnalyticsでCDNログからの可視化を行う • CDNログはAzureDiagnosticsログ に記録されている。 • 基本的に、診断ログはこのログ

    テーブルに保存されると考えて良 い。 • Category==“AzureCdnAccess Log”を指定することにより、CDN アクセスログのみに内容を絞るこ とが可能となる • 例では、クライアントIPの行数をカ ウントするようサマライズしてある • クエリ文字列は予めコピーしとく と良いかと
  3. BLUECORE.NET 趣味で自宅にITインフラ触ってる者だ BLUECORE.NET 趣味で自宅にITインフラ触ってる者だ こんなことも出来る • PDFとして出力 • ただし、拡大・縮小するとうまく表示出来なかったりと課題はある •

    ダッシュボードにリンクを張ることが出来る • ダッシュボードからクリック一発でブックにたどり着ける • グラフ及びクエリ結果のテーブルに色んなパーツがつけられる • 更新ボタンやExcelへのエクスポートボタンをつけることが出来る • 検索結果をフィルタリング出来る検索フィールドをつけることが出来る
  4. BLUECORE.NET 趣味で自宅にITインフラ触ってる者だ BLUECORE.NET 趣味で自宅にITインフラ触ってる者だ 課題 • 文字切れ • 幅を狭めることで文字切れが発生することがある •

    カーソルを合わせると全文表示とかしてくれたら嬉しいなぁ • ブックにどーしても結構な余白が出来てしまう • 幅は調整可能だが、高さが変更出来ない(なんか方法があるんだろうか) • PDF出力させる際、グラフ右側がはみ出てしまうOrz • ざっと見る分には良いけどさ・・・レベルのレポートにしかならない • 横原稿サイズにした場合、改ページ位置の調整が出来ずに変なところでグラフ が途切れるなど