ブックマークレットの再セットアップをお願いします

amazlet には www.amazon.co.jp 上の商品ページで起動した場合に、現在見ているページ商品を認識してリンクを作成する機能があります。これにより検索の手間を省きます。

この機能が、amazon 上の一部URLにおいて正しく動作しておりませんでした。本不具合に対応するためブックマークレットを修正しましたので、ユーザーのみなさまにおかれましてはお手数ですがブックマークレットの再セットアップをお願いします。

この不具合はかなり以前にご指摘いただいていたのですが、修正したとばかり勘違いしておりました。長らくご迷惑をおかけし申し訳ございませんでした。

"Bad Request" になる不具合

本日未明から amazlet での検索が "Bad Request" になる不具合が発生していました。

amazlet を動かしているサーバーの時刻がずれていたことで、AmazonAPI が正しく呼べない状態になっており、件のエラーが発生していました。

現在は復旧しています。ご迷惑をおかけしました。

10/20~22にかけて発生した障害について

10/20 ~ 10/22 にかけて、amazlet ツールで商品を検索すると "Too many temporary Amazon errors" というメッセージが表示されて、検索がエラーになるという障害が発生しました。現在は復旧しています。

amazlet ツールが内部で利用している Amazon.comProduct Advertising API へのリクエスト上限に達していたことが原因でした。

Each account used to access the Product Advertising API will be allowed an initial usage limit of 2,000 requests per hour.

とあります通り、現在 Product Advertising API では 2,000リクエスト/時間までと制限が課せられています。amazlet ツールからのリクエストがこの上限に達してしまったため、件のエラーが発生していました。制限は1時間ごとに解除される、という仕様から1時間たつとエラーが解消されまたしばらくするとエラーになる、ということを繰り返しており、開発者である私がそれが一時的な不具合であると思い込んでしまい、上限に達してしまっていることに気がつかず解決までに時間を要してしまいました。

これまで amazlet ツールは、一緒に運営している amazlet.com と同一の Product Advertising API アカウントで運営を行ってきました。amazlet.com 側ではコンテンツを動的に生成するために多数のリクエストを、Product Advertising API に対して断続的に送っています。今回 amazlet ツールと amazlet.com で利用する Product Advertising API のアカウントを分離することにより、上限を回避することで対応を行いました。

根本的には上限に達しないよう Product Advertising API のドキュメントの指示に従ったシステム改修を行うべきところですが、まずは復旧を優先するため、アカウントの分離で対応を行いました。

ご迷惑をおかけしました。

参考: リクエスト上限に達しないためのシステム改修箇所について

Each account will receive an additional 500 requests per hour (up to a maximum of 25,000 requests per hour) for every $1 of shipped item revenue driven per hour in a trailing 30-day period. Usage thresholds are recalculated daily based on revenue performance. To ensure that each account qualifies for the additional threshold increase, the URLs served by the Product Advertising API must be used when linking back to Amazon and the Associate tags used must belong to the account owner.

というドキュメントの指示に従った改修を行う必要があります。

amazlet サポートブログについて

amazlet は長年、特にサポートブログや開発のアナウンスなどは行わずに運営してきましたが、先日長時間のトラブルがあった際メールや TwitterFacebook などで多数の問い合わせをいただいたのを機に、現状のアナウンスをするべきだというのを痛感し、本ブログを設置するに至りました。

もともとは自分にとって便利なツールを、ということで作ったものでしたが、公開から6年以上が経った今も多数のユーザーのみなさまにご支持いただいていることに感謝いたします。ありがとうございます。今後とも、amazlet ツールをご愛顧いただければ幸いです。