Google App Engineのメンテナンス時間がある時、Datastoreが読み込み専用になるのが多いと思いますが、データを書こうとする時に、CapabilitiesErrorと言う例外が起こる。それを自分のコードうまく処理しないと、500エラーがでて、ユーザには良くない表現になる。 ドキュメントがないけども、実は、App Engine SDKでmaintenanceが行ってるかどうかをチェックできるcapabilities と言うAPIがあります。 メンテナンスがスケジュールされて、ある時間以内にメンテナンスを行うかをチェックします。僕は Django を使ってるけど、Capabilities APIに特に依存がないですね。 from google.appengine.api.capabilities import CapabilitySet datastore_write = C

