RORK LABEN
DEADLINE — Google Play の Android 16(API レベル36)必須化まで残り4日です。8月31日以降、新規アプリも既存アプリの更新も対象となりますRULES — 提出ルールと可視性ルールは別物です。更新を止めているアプリも、API 35 未満のままだと新しい端末で新規ユーザーに表示されなくなりますEXTENSION — 延長を申請すれば11月1日まで全ユーザーへの配信を続けられます。フォームは Play Console から出るため、締切前に済ませておく必要がありますEXPO — Expo SDK 57 は React Native を 0.85 から 0.86 へ引き上げ、React は 19.2 で据え置きです。0.86 は破壊的変更がない想定とされていますHERMES — 57.0.9 が React Native 0.86.2 に更新し、SDK 56 の Hermes V1 メモリ退行を解消しました。reanimated や worklets を使うアプリで効きますPREBUILD — expo prebuild が native の android・ios ディレクトリを既定でクリアして再生成します。手を入れた native 変更は、事前に洗い出さないと静かに失われますDEADLINE — Google Play の Android 16(API レベル36)必須化まで残り4日です。8月31日以降、新規アプリも既存アプリの更新も対象となりますRULES — 提出ルールと可視性ルールは別物です。更新を止めているアプリも、API 35 未満のままだと新しい端末で新規ユーザーに表示されなくなりますEXTENSION — 延長を申請すれば11月1日まで全ユーザーへの配信を続けられます。フォームは Play Console から出るため、締切前に済ませておく必要がありますEXPO — Expo SDK 57 は React Native を 0.85 から 0.86 へ引き上げ、React は 19.2 で据え置きです。0.86 は破壊的変更がない想定とされていますHERMES — 57.0.9 が React Native 0.86.2 に更新し、SDK 56 の Hermes V1 メモリ退行を解消しました。reanimated や worklets を使うアプリで効きますPREBUILD — expo prebuild が native の android・ios ディレクトリを既定でクリアして再生成します。手を入れた native 変更は、事前に洗い出さないと静かに失われます
記事一覧/アプリ開発
アプリ開発/2026-08-28中級

定期ジョブの取りこぼしに二週間気づけなかったのは、成功ログだけを見ていたからです

1日2回動くはずのアセット処理ジョブが半分しか発火せず、それでもログは全て成功でした。実行されなかった回を検出する台帳と、滞留の傾きを見る二つ目の番兵を、実行結果つきで組み立てます。

定期実行運用9監視3自動化13個人開発201

プレミアム記事

朝、壁紙アプリ用のカテゴリ未設定の画像フォルダを何気なく開いて、手が止まりました。数が明らかに多いのです。

そのフォルダは、1日2回動く分類ジョブが毎回きれいに空にしてくれているはずでした。実行ログを遡っても、並んでいるのは成功の行ばかりです。エラーは1件もありません。

原因はジョブの中身ではありませんでした。1日2回動くはずのジョブが、実際には1回しか発火していなかったのです。しかも、その事実はどのログにも書かれていませんでした。

気づいたのは、ログではなく溜まった側からでした

指定していたのは 30 4,16 * * * という式でした。4時半と16時半の2回。カンマ区切りで複数のスロットを1つの式にまとめる、ごく普通の書き方です。

ところが実際に発火していたのは、朝の1回だけでした。夕方の枠は、静かに存在しないままだったのです。

厄介なのは、この状態が「壊れているように見えない」ことです。動いた回はきちんと最後まで走り、成功で終わっています。ジョブ自体はどこも壊れていません。壊れていたのは、動く回数のほうでした。

私が気づけたのは、監視の仕組みがあったからではなく、たまたま未処理フォルダを目視したからです。運用を仕組みで支えているつもりで、実際には自分の目に頼っていたわけです。ここは正直に書いておきたい部分でした。

「実行されなかった回」はログに現れません

冷静に考えれば当たり前なのですが、しばらく腑に落ちませんでした。

ログは「起きたこと」の記録です。実行されなかった回には、書き手がいません。ですから成功ログをいくら丁寧に眺めても、そこには欠落が写らないのです。

見ているもの検出できること見逃すこと
実行ログの成功/失敗走った回が途中で落ちたかそもそも走らなかった回
最終実行時刻完全に止まったこと2回のうち1回だけ動いている状態
ジョブの実行時間処理の重さの変化1回あたりは正常なので変化なし
期待スロットとの突き合わせ欠落した回の日時スロット定義そのものの誤り
未処理件数の傾き供給に処理が追いついていない期間供給側も同時に減っている場合

上の2行だけで運用していると、半分だけ動いている状態は無期限に続きます。私の場合、次の更新まで気づかないままでした。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
自分のスケジューラが複数スロットの指定どおりに発火しているかを、翌日には確かめられるようになる
成功ログには決して現れない「実行されなかった回」を、期待スロットとの突き合わせで検出する仕組みを自分の運用に置けるようになる
処理が供給に追いついていない期間を、滞留件数の傾きから短いコードで見つけられるようになる
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Rork Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥2,480 の永久アクセス
メンバーシップを見る →

関連記事

アプリ開発2026-05-29
壁紙アプリ6本のリリースノートを同期して書いた3週間の所感
Rorkで並行運用している壁紙アプリ6本のWhat's New欄を同じ週に揃えて書く運用を3週間続けた所感です。リポジトリ側で揃えた仕組み、つまずいた3つの落とし穴、読了率など数値で見えた変化、1日4本ペースに耐えるための設計を記録しています。
ビジネス2026-05-21
AdMob のダッシュボードを毎日見ない運用に切り替えた所感 — Rork アプリで Slack 通知 4 階層を組んでから 2 ヶ月
2014年からアプリ運営を続けるなか、AdMob を毎日開く習慣を手放しました。Slack 通知を4階層に分けて Rork アプリの広告指標を眺めない運用に変えてから2ヶ月の所感を、設計判断と失敗例を含めて書いています。
アプリ開発2026-08-16
グラフが壊れて見えるのは、データが多いときではなく最初の数日でした
記録アプリの折れ線グラフが、データの少ない最初の数日だけ線が消える。原因はY軸の幅が0になり座標がNaNになることでした。実測した挙動と、描画前に置く小さな正規化層を紹介します。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →