はじめに

業務でWowzaを使うことになり、
これまで触ったことがなかったため、開発環境で動作を確認してみました。

この記事では、ログ出力に関する内容を備忘録的に書き残しておきます。

※Wowzaを利用した動画配信方法は
同じチームメンバーの記事に掲載されているため割愛します。

構成

今回はこのような仕組みで動画配信を行います。
<MP4 → Streaming Server → MPEG-DASH → Player>

配信サーバとして使用するのは、
Wowza Streaming Engine(AWS EC2)となります。

今回は、以下のAMIからEC2を作成しました。
WowzaStreamingEngine-ebs-hvm-byol-4.7.5-x86_64-1522956083-668790f8-598f-42d3-ad55-a2670072241b-ami-73e04e0e.4 (ami-84e8f1f8)

ログの場所

Wowzaのログはマネージャーとサーバの両方から確認することができます。

1. Wowza Streaming Engine Manager

Wowzaにはマネージャーが用意されており、
ほとんどの設定はここから行えます。ログも確認可能です。

http://[Public IP]:8088/enginmanager

  • Username:wowza
  • Password:EC2のインスタンスID

設定次第で、ログ出力の仕方を変更することが可能です。

Server > Logs

詳しくは、公式ドキュメントを参照ください。

2. サーバログ

Wowzaインストール済みのAMIから作成したEC2では、
ログは下記に出力されます。

/usr/local/WowzaStreamingEngine/logs

ログ解析

動画は問題なく視聴できる前提で話を進めます。

上記の場所にあるアクセスログを確認します。
wowzastreamingengine_access.log

配信直後

2018-10-03    19:05:34    JST    comment    server    INFO    200    -    MPEGDashWriterHandler.createChunkM4S[live_demo/_definst_/demo.stream]: Add chunk: id:1 type:m4s_mux a/v/k:485/250/2 duration:10417    -    -    -    5678.758    -    -    -    -    -    -    -    --    -    -    -    -    -    -    -    -    -    -    -    -    -    -    -    -
2018-10-03    19:05:34    JST    comment    server    INFO    200    -    MPEGDashWriterHandler.createChunkM4S[live_demo/_definst_/demo.stream]: Add chunk: id:1 type:m4s_audio a:485 duration:10417    -    -    -    5678.758    -    -    -    -    -    -    -    -    --    -    -    -    -    -    -    -    -    -    -    -    -    -    -    -
2018-10-03    19:05:34    JST    comment    server    INFO    200    -    MPEGDashWriterHandler.createChunkM4S[live_demo/_definst_/demo.stream]: Add chunk: id:1 type:m4s_video v/k:250/2 duration:10417    -    -    -    5678.758    -    -    -    -    -    -    -    -    --    -    -    -    -    -    -    -    -    -    -    -    -    -    -    -
  • m4s_mux
  • m4s_audio
  • m4s_video

この3つが1セットとなり、
<id:10>になるまで約10秒おきに繰り返す挙動となりました。

今回はMPEG-DASH形式で動画を送っているため、
「MPEGDashWriterHandler.createChunkM4S」となっていますが、
別の規格の場合は、別のログが出力されるものと思われます。

動画視聴

MPEG-DASHはSafariから見れないため、VLCで視聴します。

視聴開始

2018-10-03  18:31:43    JST connect cupertino   INFO    200 1120040081  -   _defaultVHost_  live_demo   _definst_   579.547 wowzabyol.dev.stream.cloudpack.jp   1935    http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   210.227.234.114http (cupertino) -   VLC/3.0.4 LibVLC/3.0.4  1120040081  0   0   -   0   -   -   demo.stream -   -   -   -   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -
2018-10-03  18:31:43    JST create  stream  INFO    200 demo.stream -   _defaultVHost_  live_demo   _definst_   0.003   wowzabyol.dev.stream.cloudpack.jp   1935    http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   210.227.234.114 http (cupertino)    -   VLC/3.0.4 LibVLC/3.0.4  1120040081  0   0   14  0   0   0   demo.stream -   -   -   -   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -
2018-10-03  18:31:44    JST play    stream  INFO    200 demo.stream -   _defaultVHost_  live_demo   _definst_   0.557   wowzabyol.dev.stream.cloudpack.jp   1935    http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   210.227.234.114 http (cupertino)    -   VLC/3.0.4 LibVLC/3.0.4  1120040081  0   2047    14  335525  0   0   demo.stream -   -   -   -   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -

上記のログから、動画開始までに下記のステータスを辿ることが分かります。

①connect cupertino

②create stream

③play stream

視聴終了

2018-10-03  18:33:39    JST stop    stream  INFO    200 demo.stream -   _defaultVHost_  live_demo   _definst_   115.964 wowzabyol.dev.stream.cloudpack.jp   1935    http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   210.227.234.114 http (cupertino)    -   VLC/3.0.4 LibVLC/3.0.4  1120040081  0   18079638    14  430692  0   18068680    demo.stream -   -   -   -   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -
2018-10-03  18:33:39    JST destroy stream  INFO    200 demo.stream -   _defaultVHost_  live_demo   _definst_   115.965 wowzabyol.dev.stream.cloudpack.jp   1935    http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   210.227.234.114 http (cupertino)    -   VLC/3.0.4 LibVLC/3.0.4  1120040081  0   18079638    14  430692  0   18068680    demo.stream -   -   -   -   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -
2018-10-03  18:33:39    JST disconnect  cupertino   INFO    200 1120040081  -   _defaultVHost_  live_demo   _definst_   695.512 wowzabyol.dev.stream.cloudpack.jp   1935    http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   210.227.234.114 http (cupertino)    -   VLC/3.0.4 LibVLC/3.0.4  1120040081  0   18079638    -   430692  -   -   demo.stream -   -   -   -   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -   http://wowzabyol.dev.stream.cloudpack.jp:1935/live_demo/demo.stream/playlist.m3u8   -

視聴終了の際は、下記のステータスを辿ることがログから確認できました。

①stop stream

②destroy stream

③disconnect cupertino

まとめ

今回は基本的なログ解析のみとなりましたが、
今後は時間がある時により精緻な解析を行いたいと思っています。

元記事はこちら

Wowzaログ解析