GoAccessでnginxログ解析 HLSリアルタイム配信状況確認

HLS配信にしてから、リアルタイムでアクセス状況を知るのが難しくなりました。
RTMP配信の時は、nginx rtmp-module に、テンプレートがあって、これを使って接続拠点数、回線帯域をリアルタイムに監視する事ができたのですが、HLS配信ではこの方法はとる事ができずです。

そこで、リアルタイムwebログ解析ソフトGoAccessを利用してwebレポートを吐けるようにしました。

nginxアクセスログ解析をリアルタイムで行いたい GoAccess

このGoAccessのwebレポートから、情報が分かりやすいようにカスタマイズしてみます。

GoAccessのWebレポートは秀逸です。デザインもかっこいい。そこで、HLS配信している時に、ユニークアクセス数と、配信帯域が極力わかるような形のオプションをつけて実行してみました。

UNIQUE VISITORS PER DAY – INCLUDING SPIDERS

このパネルには、ヒット数、ユニークビジター、日付ごとの累積帯域幅などの指標が表示されます。同じIP、同じ日付、同じユーザーエージェントを含むHTTPリクエストは、一意の訪問者とみなされます。デフォルトでは、Webクローラ/スパイダが含まれています。

オプション
–date-spec = hr

をつける事で、時間レベルでユニークアクセス数の解析ができるようになります。1日だと、リアルタイム性にかけますが、時間ごとにすると、まだ妥当な数字になってきます。

goaccess01.jpg

10:00 – 11:00 の間のユニークアクセス数が、51という事になります。ただ、この中には、m3u8以外のファイルにアクセスした可能性や、クロールなど何か他の要因でのアクセスも数に含まれるため若干多めだと考えていた方が良い値です。

TIME DISTRIBUTION
このパネルには、1時間ごとのレポートが表示されます。このオプションでは、24時間分のデータポイントが1日の1時間ごとに表示されます。1時間ごとのレポートだと、ちょっとおおざっぱすぎて、HLS配信時のリアルタイムな帯域幅を見るには情報不足です。これを下記オプションをつける事で10分ごとの表示変更する事が可能です。

オプション
–hour-spec = min

10分ごと帯域幅表示ができるので、これを600秒(10分)で割ると、1秒当たりのGiBが分かります。また、時間の表示が独特です。10:5と表示されると、これは10:50の事を表します。

goaccess02_2.jpg

12:50の値は、7.31GiBなので、0.012GiB/sのデータ帯域幅を利用しているという事になります。ざっと12MB/sで、96Mbpsという事になります。※GiB(ギビバイト)換算していない簡易計算

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です