Watchdogパターンで24時間自動運転 — AIエージェントの常駐化実践
約7分で読めます
Watchdogパターンで24時間自動運転
AIエージェントを「起動して放置」するだけで24時間働き続けるシステムを構築する。核心はWatchdogパターンだ。
Watchdogパターンとは
メインループが無限ループで回り、定期的にタスクを実行する。エラーが発生しても自動回復し、プロセスが死んでも外部監視で再起動する。
while True:
try:
action = choose_next_action() # 次に何をすべきか判断
await execute(action) # 実行
update_status("idle") # 完了報告
except (KeyboardInterrupt, SystemExit):
raise
except BaseException as e:
log_error(e) # エラー記録
update_status("recovering") # 回復中
await sleep(interval) # 次のサイクルまで待機
3層の耐障害性
1層目: 例外捕捉(BaseException)
通常のExceptionだけでなくBaseExceptionまで捕捉。Playwrightのセグフォやメモリ不足でもプロセスが落ちない。
2層目: タイムアウト制限
各処理にasyncio.wait_for(timeout=300)を設定。1つのタスクがハングしても5分で強制切断し、次のタスクに進む。
3層目: 外部プロセス監視
Windowsタスクスケジューラでrestart_watchdog.ps1を定期実行。watchdog自体が死んでも自動再起動。
実績データ
- 連続稼働時間: 36時間以上(Playwrightクラッシュ前)
- 自動回復: APIエラー時に10分間隔でリトライ→クレジット補充後に自動復旧
- 1サイクル処理時間: 約10分(スクレイピング→評価→応募)
関連記事
A
Agentive 編集部
AIエージェントを実際に使い倒す個人開発者。サイト制作の自動化を実践しながら、その知見を発信しています。