[UPDATE] AWS Elemental LinkでCloudWatch metricsがサポートされました!

Linkデバイスの使用状況がCloudWatch metricsで取得できるようになりました。入力信号処理やストリーミングの正常性、エンコードしているビットレート情報、そしてデバイスの温度などがmetricsで取得可能です。
2022.01.31

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

清水です。AWS Media Servicesの細かなアップデートを追っていくコーナーです。本エントリではAWS Elemental MediaLive用のセットアップ済みライブエンコーダデバイスとして動作するAWS Elemental LinkでCloudWatch metricsがサポートされたアップデートをお伝えいたします。なお、AWS What's Newには現時点で記載がなく、以下のAWS Elemental MediaLive User Guideのドキュメントヒストリでアップデートを確認しました。

Document history for user guide - AWS Elemental MediaLive

取得できるLinkデバイスのmetricsについては、同AWS Elemental MediaLive User Guideの「Input device metrics」の項目で確認することができます。

本エントリではこのElementa LinkのCloudWatch metricsサポートについて、実際にLinkデバイスを使用しながら確認してみたのでまとめてみます。

AWS Elemental LinkでサポートされたCloudWatch metricsを確認してみた

AWS Elemental Linkの使用準備

実際にAWS Elemental Linkを使い、CloudWatch metricsを確認してみます。Linkデバイスはオレゴンリージョンのものを使いました。実際にAWS Elemental MediaLiveと連携してLinkデバイスを使っている状態(MediaLiveのChannelがrunningの状態)で確認を行うため、MediaLiveでライブストリーミングを行う準備をします。各リソースはMediaLiveのWorkflow Wizardを使って作成します。([UPDATE] AWS Elemental MediaLiveでワークフローウィザードが利用可能になりました | DevelopersIO

Workflow Wizardでのリソース作成、Video sourceの箇所でinput typeとしてElemental Linkを選択します。

Video outputはMediaPakcageを使用しました。以下はWizard最後のReview and create resourcesの画面です。

リソースができたら、Linkデバイス側にも映像信号を入力、そしてMediaLive Channelをスタートさせます。MediaPackage/CloudFront側でライブストリーミングしている映像が問題なく視聴できていることを確認します。

AWS Elemental LinkのCloudWatch metricsを確認してみる

正常にライブストリーミングできていることを確認しながら、本題であるLinkデバイスのCloudWatch metricsについて確認してみましょう。

CloudWatchのマネジメントコンソールのMetricsの項目から、AWS namespacesのMediaLiveに進みます。(Custom namespacesではなくAWS namespacesのほうを選択しましょう。)

DeviceType, InputDeviceIdを選択します。

Linkデバイスに関する10のMetric nameが確認できますね。

各Metricの詳細はドキュメントに記載があります。(2022/01/31時点で英語版ドキュメントのみ、日本語訳はまだのようでした。)

UsingSDIまたはUsingHDMIを使ってデバイスがどちらの入力方式を使用しているかが確認できます。またエンコーダの信号入力処理の正常性の確認、streaming endpointへの接続確認などのmetricsが取得できます。個人的におもしろいなと思ったのはTemperature metricsです。デバイスの温度が確認できるわけですね。その他、最大ビットレートと実際のビットレートなども確認が可能です。

以下、実際に確認できたLinkのmetricsの一例となります。

MediaLiveを使ってライブストリーミングを行っていたのはだいたい12:10から12:25ぐらいでした。MediaLiveのChannelがRunningの状態でなくてもmetricsは取得されているわけですね。なお、11:50から11:55の間にmetricsが取得できていないタイミングがありますが、Linkデバイスでソフトウェアップデートが走っていたタイミングかと思います。

ちなみに、温度については華氏(Fahrenheit)とのことです。華氏51度ということは摂氏だと123度ほどになるので、Linkデバイス内部の(例えば処理用のプロセッサのようなものの)温度を観測しているかと思います。ちなみにこの(華氏51度)の状態でLinkデバイス本体に触るとほんのり温かい(ラップトップのパームレスト部分がこの温度だとちょっと嫌になる)感じでした。

2022/02/09 温度まわりの記述に関して訂正・追記させていただきます。

公開当初(2022/01/31)CloudWatchのTemperature metricsの値は51で単位が華氏であることから、「華氏51度ということは摂氏だと123度ほど」と記載しておりました。こちらについては単位変換の計算ミスがあり、正しくは華氏51度は摂氏10度ほどとなります。(計算を逆にしており、摂氏51度が華氏123度となります。)

ただ、摂氏10度だとあきらかに触った感じ(ほんのりと温かい)と温度差があります。改めてドキュメントを確認すると、「degrees Celsius」と表記されていました。

Input device metrics - AWS Elemental MediaLive

「あれ!? 確認したときはたしかに華氏(Fahrenheit)だったよな、、」と、Googleキャッシュを確認してみました。2022年1月31日の段階ではたしかに「Fahrenheit」だったので、ドキュメントの訂正があったのかと思います。

Input device metrics - AWS Elemental MediaLive (2022/02/09に確認したGoogleキャッシュ)

このドキュメントの「Temperature metricsの単位は摂氏である」という記載を踏まえると、当時のLinkデバイスの温度は摂氏51度だったことになります。「Linkデバイス本体に触るとほんのり温かい(ラップトップのパームレスト部分がこの温度だとちょっと嫌になる)感じ」にも合致するかと思います。

まとめ

AWS Elemental Linkのアップデート、CloudWatch metricsのサポートについて、実際にmetricsを取得しながら確認してみました。これまでLinkデバイスの監視についてはデバイス自体のステータスを定期的に確認したり、連携先のMediaLiveのmetricsの変動などから察するなどするしかなかったかと思います。新たにサポートされたLinkデバイスのCloudWatch metircsを活用することでより迅速、そして簡単に異常の検知などが行えるかと思います。非常にうれしいアップデートだなと思いました!