Unknown Shadow topic というエラーが出続ける

0

m5stackから、1秒ごとに、Iot CoreへPublishしています。

Publishした内容は、すべて、MQTTテストクライアントでサブスクライブできていることを確認していますが、 CloudWatchの"AWSIotLogsV2"に下記内容のエラーログが出ています。

エラーログの出力間隔は5秒であったり、20秒であったり、まちまちではありますが、平均で6回/分ほど出力されています。


エラーログ:

"logLevel": "ERROR",

"eventType": "ShadowOperation",

"reason": "Unknown Shadow topic"


IotCoreのデベロッパーガイド「CloudWatch AWS IoT ログエントリ」 にも、"ShadowOperation"というエントリがなく、困っています。 考えられる原因がわかりましたら、ご教授願います。

TackTa
質問済み 1年前327ビュー
2回答
0
承認された回答

"Unknown Shadow topic" のエラーは、Publish されている Device Shadow トピック名に誤りがある際に発生する場合がございます。

具体的には、以下ドキュメント [1] にございます Device Shadow トピックの形式に誤りがある場合に発生することがございます。
私の環境でも、現時点の動作として "$aws/things/thingName/shadow/name/shadowName" という形式を誤った際に該当のエラーが発生することを確認いたしました。

[1] Device Shadow MQTT トピック
https://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/device-shadow-mqtt.html

該当の AWS IoT ログに "topicName" の値が記録されているかと思いますので、使用されているトピック名に誤りがないかご確認いただければ幸いです。

AWS
回答済み 1年前
0

Device Shadow MQTT トピックの使い方を間違っていたようです。

デバイスから送信したい内容を

$aws/things/thingName/shadow/name/shadowName

にPublishしていました。

本来、$awsで始まるトピック名は予約されていて、Device Shadowを用いてデバイスとのやりとりを行うためのトピックである。 Device Shadowではなく、普通に送信したい内容は、予約語にあたらないトピック名でPublishする必要があるということですね。

ちなみに、ご回答いただく前に、名前付きのShadowがよくないのかと思い、Classic Shadowも作って、

$aws/things/thingName/shadow

にもPublishしてみました。こちらはエラーが出ませんでしたが、使い方としては上記と同様、間違っているということですね。

ご教授頂き、ありがとうございました。 Device Shadowについて、調べなおしたいと思います。

TackTa
回答済み 1年前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン