茄子です。
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の場合は、編集からスクリプトエディタの中の該当部分(↓)を消してください。