Services)MediaConvertのジョブの状態や進捗率をEventBridgeで通知できるので試してみました。フロントからアップロードして、API叩いて進捗率を表示する想定です。EventBridgeからLambda経由でDynamoDBに保存して、APIで取得できるようにします。JobIdアップロードしたURLしか知らないフロント向けにMediaConvertの最新のジョブIDを返してあげて、ステータス確認に使用する。KeyValue成功時にS3のkeyファイルを作成するのに使用する。Changeの下記ステータスの最新を残すのに使用する。ERROR※INPUT_INFORMATIONは残さない。COMPLETEの前に発生する時と後に発生する場合がある。ScalingでCloudWatchのアラームが設定されるので、その分の料金が発生します。Scalingは不要なので削除しました。DevelopersIO1テーブル辺り8個のアラームが設定されました。今回は3テーブルなので、$2.40/月https://us-east-1.console.aws.amazon.com/billing/home#/bills(AWSのイベント参加で頂いたクレジットを適用しているのでマイナスされています)https://ap-northeast-1.console.aws.amazon.com/cloudwatch/home?region=ap-northeast-1#alarmsV2:Lambda関数を作成EventBridge設定の為、先に関数のみ作成します。3.9[関数の作成]EventBridgeにルールを作成Lambda関数のトリガーを追加からだと、イベントパターンにMediaConvertが出てこないので、EventBridgeから設定します。オプション[次へ]レビューと作成[次へ]MediaConvertのステータス更新間隔を変更デフォルトは60秒毎にイベントが起こりLambdaが起動します。画面の進捗率の更新間隔もこれに従ってそう。60秒や30秒だと長いし、通常15秒ぐらいにするのが良さそうですが、テストなので10秒にしました。https://ap-northeast-1.console.aws.amazon.com/mediaconvert/home?region=ap-northeast-1#/templates/listIAMロールにポリシー追加LambdaからDynamoDBにアクセスできるようにIAMにポリシーを追加します。result['Job']['Id']keyファイルの情報はDynamoDBに保存して、変換が完了してから作成するようにしました。変換に失敗してもS3にゴミが残らないように。update_itemでKeyが存在しなかったら作成、存在したら更新する動きになります。))エラーメッセージのS3のパスをフロントに表示したくないので、s3://xxx/を空に変更しています。他にも見せたくない情報があるかは不明なので随時対応。Statusは予約語で使えなかったので、JobStatusにしています。変換後の動画や鍵を置くバケット上で設定しているIAMの権限が足りないと下記エラーになる。対象のS3に動画ファイルをアップロード(またはコピー)createMediaConvertJobのテストイベントを実行しても、receiveMediaConvertJobStateも呼ばれる。Logsで確認して対応https://ap-northeast-1.console.aws.amazon.com/cloudwatch/home?region=ap-northeast-1#logsV2:log-groupsreceiveMediaConvertJobStateのテストイベントデバッグで使ったテストイベントを記載しておきます。Bunny.test.m3u8"]}]}}MediaConvertJobIdToOutputに上記のjobIdを作らないとエラーになります。先に設定しても問題ないですが、対象をプレビューで確認できるので、テーブルに値が入ってから設定しました。ExpirationTimeプレビュー[プレビューの実行][TTLの有効化]削除は期限切れになったらすぐにされる訳ではないようです。時間以内に削除します。続き長くなったので、フロントにステータスを返す所は次回書きます。Gateway+LambdaでDynamoDB(MediaConvertの情報)を返すあと、試しながら作った為、手順が散らばっているので、まとめの記事も別途下記予定です。対して2件のコメントがあります。コメントをキャンセルメールアドレスが公開されることはありません。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。定期タスクの管理・リマインダー(Slack・メールに対応)タスクをカレンダーや一覧で管理し、チームで共有できます。リマインドで、忘れやすい年次・月次タスクの実施忘れや、メンバー間の譲り合いによる実施漏れを防ぐ事ができます。公開リポジトリ・動作確認サイトnuxt-app-originhttps://nuxtapp.nightonly.com/rails-app-originhttps://railsapp.nightonly.com/自己紹介フリーランスから法人成りして、業務委託で上場企業の会計ソフトの開発(スクラム)と、副業で上場企業の社内システム(取引先等の管理やSalesforce連携等で業務改善)の開発や改善・提案、フォロー等を行なっています。両社ともフルリモートです。ECやモール連携、決済、動画のストリーミング配信、YouTubeのデータ分析等の経験もあります。AWSを主に使っています。日々、技術の積み上げを意識して、価値提供を目指しています。Flowを使っている案件に携わってみて、疑問を感じたので、どっちが(もしくは別の方法)が良いかを改めて考えてみました。RailsRuboCopにRSpecのルールを導入してみたRuboCopにRSpecのルールが提供されているので導入してみました。RSpecのルールはデフォルトだと厳し過ぎるのと、あえて従いたくないルールもあるので設定変更しました。半自動でマネ活・ポイ活:SBI新生銀行+住信SBIネット銀行、auじぶん銀行+PayPayチリも積もれば山となる。APIかRedux等を使って値を保持しようしたら、毎回初期化されたので原因を調べました。法人口座開設:初期・月額無料で、振込手数料も抑えたい(振込先の個人口座も)昔は簡単に作れたと思いますが、マネーロンダリング対策で審査が厳しくなっているようです。当然ながら、審査にも時間が掛かるようです。タスクをカレンダーや一覧で管理し、チームで共有できます。リマインドで、忘れやすい年次・月次タスクの実施忘れや、メンバー間の譲り合いによる実施漏れを防ぐ事ができます。