表題の件についてご案内とお詫び申し上げます。
2025年6月2日(月)18:45〜6月3日(火) 9:30において、次のシステム障害の発生を確認いたしました。
当障害の影響があった店舗さまにおかれましては、大変恐れ入りますが、商品ページ復旧のご対応が必要となりますため、ご確認くださいますようお願い申し上げます。
以下に詳細と経緯をご案内申し上げます。
概要
-
対象のアプリ
rankstamp
-
発生時刻
2025年6月2日(月) 18:45~ 3日(火) 9:30まで -
対象店舗さま
該当の時間帯にrankstmapより商品ページが更新された、楽天店舗さま
(Yahoo!ショッピングストアさまは対象外となります。) -
現象
商品ページ情報の一部が、「rankstampが生成した情報」のみの状態で上書きされる。
<影響した箇所>
・PC用販売説明文
・スマートフォン用商品説明文
・商品画像
・商品名
(※rankstampの反映先として設定されている項目が対象となります。)
-
現在の状況
現象が発生する原因について、システム修正を行いました。
影響があったすべての店舗さまへご案内いたしました。
※6月3日(火) 14:55に、影響があった店舗さま・且つ弊社へお問合せをいただいていない店舗さまへ、次の件名にてご案内を送信しております。
件名:rankstampによる商品ページ更新に関するお詫びとご対応のお願い
※上記メールが受信サーバより拒否されてしまった店舗さまにおかれましては、別途ご案内差し上げております。
時系列
・6月2日(月) 18:41 :原因となるソースコードのリリースを行いました
・6月2日(月) 18:45 :自動更新処理により、現象が発生しました
・6月3日(火) 9:00 :店舗さまのお問合せにより、当現象を認識しました
・6月3日(火) 9:30 :影響範囲の拡大を防ぐため、システム処理を緊急停止いたしました
・6月3日(火) 12:00 :原因の修正を行いました
・6月3日(火) 12:15 :システム処理を再開しました
・6月3日(火) 〜21:00:影響があった全てのお客さまへご案内しました
・6月4日(水) 6:00 :再発防止策について追記しました
商品データの復旧について
大変恐縮ではございますが、今回のケースでは、弊社側で商品データの復旧対応を行うことができず、
影響のあった店舗さまにおかれましては、誠にお手数ではございますが、
お手元にて商品データの修正・復旧をお願いせざるを得ない状況となっております。
本来であれば、弊社にて速やかに復旧作業を行い、ご負担をおかけしない形で対応すべきところ、
その体制が整っておらず、ご迷惑とお手間をおかけしてしまったこと、心より深くお詫び申し上げます。
対象商品の確認方法
- ECテーブルサービス画面より、「rankstamp」のメニューをクリックします。
- 「反映履歴」メニューをクリックします。
- 履歴より、「2025年6月2日(月) 18:45~ 3日(火) 9:30」において、「受賞あり」となっている履歴をクリックします。
- 更新された商品があれば、該当商品をクリックし、商品ページの状態をご確認ください。
検索エンジンのキャッシュによる過去ソースコードのご確認について
一部の店舗さまの商品ページにつきましては、検索エンジンのキャッシュに過去の商品ページが保管されていることを確認いたしました。
キャッシュの有無については、以下のサイトより対象商品ページのURLを入力することでご確認いただけます。
キャッシュの有無の確認や、キャッシュからソースコードを取り出す対応につきましては、弊社でも可能な限りお手伝いさせていただきます。お手元での復旧が困難な店舗さまにおかれましては、サポートチームまでご相談いただけますでしょうか。
原因について
1. 不具合の発生経緯
6月2日 18:41、新規機能の開発を目的として、楽天RMS APIから商品データを取得する処理の一部を改修し、リリースいたしました。
しかし、この改修に不備があり、商品データを取得した際、内容を空(空データ)として扱ってしまう状態が直後より発生しておりました。
この空データをもとに、rankstampが生成する情報(ランキング受賞画像など)を追加し、
商品ページを更新する処理がそのまま実行されたことで、本来の商品情報がrankstampの情報のみで上書きされてしまうという障害が発生いたしました。
2. テスト工程での想定不足
リリース前後のテストでは都度、「取得した商品データにrankstampの情報を追加しても、元のデータが不正に書き換えられていないか」を確認しております。
しかし今回のケースでは、そもそも取得された元データ自体が空であるという異常状態が発生しており、そのケースを想定したテストが行われていなかったため、問題を検知できませんでした。
3. システム内での異常判定が不足
加えて、システム内において「取得した商品データが空であるかどうか」を判定する処理が不足しており、異常を検知・中断できないまま、処理が継続されてしまったことも要因となります。
さらに監視上もエラーが検出されない状況であったため、店舗さまからのお問合せにより事態を把握することとなり、初動が遅れた結果、影響範囲の拡大を招いた事実を重く受け止めております。
再発防止策と今後の対応について
■再発防止策について(現時点の対応方針)
本件についてはすでに不具合の修正が完了しており、同様の問題が再発することはございませんが、
今後のシステム改修や新機能のリリース時に同様の事象が起きないようにするため、
以下の4点については内容を確定させ、すでに優先的に着手を開始しております。
-
API連携のテスト強化
実際に楽天RMSのAPIを使用し商品データを取得するテストを導入し、
取得したレスポンスが空データとして扱われていないことを検証する項目を追加します。 -
取得データの空判定による処理制御
商品データ全体が空であった場合、以降の処理を中断する判定ロジックを組み込みます。 -
重要項目の欠損検知による処理中断
商品名が空、または商品画像(1枚目)が空の場合にも処理を中断する仕組みを実装します。 -
取得元データのログ保存
万が一の際に備え、楽天RMSから取得した元データをログとして保管し、最大3ヶ月間保存できるようにいたします。 -
スーパーSALE期間中のリリース制限 (※追記)
今後はスーパーSALEを含む大型イベント期間の前後においては、緊急性のあるものを除き、システムの改修・リリースを一切控える方針といたします。
今後はリリース前のテスト工程において、同現象を確実に検知できるよう項目を強化するとともに、システム上でも商品データに異常が見られた場合は自動的に処理を中断し、商品ページが更新されないよう制御を行う対応を進めてまいります。
なお、いずれの対策もシステム改修を伴うため、慎重な実装と動作確認を行なってまいります。
そのため、別の不具合を引き起こすリスクを避ける目的で、本対応の運用開始は楽天スーパーSALE終了後を予定しております。
導入時期 | 2025年6月17日(火) 12:00〜13:00 予定 (※予告なく変更となる場合があります。) |
■段階的な取り込みについて
また、以下の2点については現在、実現方法を検討中であり、中期的な対応事項として進めてまいります。
-
弊社システムからの自動復旧機能の実装
取得済みデータやログを活用し、万が一の際に、弊社システムからデータを復旧できる仕組みの構築を検討しています。 -
緊急時の電話窓口の開設
重大な障害時に迅速にご連絡・ご相談いただける体制として、電話による緊急窓口の設置を検討しております。
いずれもすぐに実装・運用を開始できる内容ではなく、
ご期待に沿えず誠に恐縮ではございますが、実現可能な方法を早急に検討の上、段階的に取り組んでまいります。
本件についてのご不明な点・ご意見につきましては、サポートチームまでご連絡ください。
改めまして、このたびは多大なるご迷惑をおかけしましたこと、心よりお詫び申し上げます。
引き続き、誠意をもって対応してまいりますので、何卒よろしくお願い申し上げます。