2023.09.01[Fri]

AWS CloudWatch Synthetics Canaryのテストが成功しているのに失敗と表示される

  • AWS

目次

  • - 問題点
  • - 原因・修正

茄子です。

AWS CloudWatch Synthetics CanaryはAWSから死活監視をするサービスです。
今回は、API Canary作成時にちょっとした注意点がありましたので紹介します。小さな問題ですが、バグといっていい内容なのでそのうち修正されるかもしれません。

問題点


API Canaryをとりあえず必要なところだけ埋めて作ると、実行後に以下のように、URLへのリクエストには成功していながらもcanaryの成否は失敗と付いてしまいます。

「問題」のところに表示されるメッセージは「Unable to publish CloudWatch latency and result metrics with timestamp ~~~ 」と出ます。CloudWatch canary はテスト後に結果をアラームの基準に用いることができるように整理・格納するのですが、その処理中にエラーがあったということになります。

原因・修正

上述のエラーメッセージの最後は「 Value contains non-ASCII characters. 」となっていて、これが原因です。

作成時の画像を交えて解説します。

こちら(↑)が、API Canaryの作成画面で、ここで「HTTPリクエストを追加」を押します。

するとモーダルが出ます。メソッドGETを選択し、URLを埋めます。(仮でサイトのURLが入ってますが、本来はAPIのURLを入れます。)

すると保存する手前の「ステップ名」に自動で「 検証  {上の欄で入力したドメイン} 」が入力されています。

ここに 検証 と日本語が含まれていることでエラーになるのでこちらを消してください。

既に作成済みのCanaryの場合は、編集からスクリプトエディタの中の該当部分(↓)を消してください。

Share

Dawnのスライドショーにスマートフォン用の画像を追加する方法Shopifyの決済画面カスタマイズ - Shopify Functionsをストアにデプロイする