openclaw-maintenance は何をしますか?
OpenClawサービスの監視とメンテナンスを自動化するスクリプトを提供し、ヘルスチェック、自動再起動、ログクリーンアップによって安定性を確保します。
概要
このスキルは、OpenClawサービスの運用に必要な基本的なメンテナンスタスクを自動化するためのスクリプトをまとめています。以下の機能を提供します。
- ヘルスチェック: サービス稼働状態を定期的に確認し、応答がない場合にのみアラートまたは自動復旧を実行します。
- 自動再起動: 異常検知時、定義されたポリシーに従ってサービスを安全に再起動します。
- ログクリーンアップ: 一定期間を過ぎたログファイルを自動的に圧縮・削除し、ディスク使用量を管理します。
前提条件
- OpenClawがインストールされたLinux環境
- bashおよび基本的なシェルユーティリティ
- (推奨) cronまたはsystemdタイマーによる定期的な実行
インストール
リポジトリをクローンし、スクリプトを任意のパスに配置します。
git clone https://github.com/your-org/openclaw-maintenance.git
cd openclaw-maintenance
設定
メインの設定ファイルは config.sh です。以下の変数を環境に合わせて変更してください。
# 監視するサービス名
SERVICE_NAME="openclaw"
# ヘルスチェックの間隔(秒)
CHECK_INTERVAL=60
# ログファイル保存期間(日数)
LOG_RETENTION_DAYS=7
# ログディレクトリのパス
LOG_DIR="/var/log/openclaw/"
使用方法
ヘルスチェックと自動再起動
./healthcheck.sh
このスクリプトは、$SERVICE_NAME で指定されたプロセスが実行中であることを確認します。プロセスが停止している場合、またはHTTPエンドポイント(設定されている場合)が応答しない場合、restart.sh を呼び出してサービスを再起動します。
ログクリーンアップ
./log-cleanup.sh
$LOG_RETENTION_DAYS 日より古いログファイルを $LOG_DIR から削除します。
cronによる定期実行(例)
crontabに以下を追加します。
*/5 * * * * /path/to/openclaw-maintenance/healthcheck.sh
0 0 * * * /path/to/openclaw-maintenance/log-cleanup.sh
スクリプト一覧
| ファイル名 | 機能 |
|---|---|
healthcheck.sh | OpenClawサービスのヘルスチェックと自動再起動 |
log-cleanup.sh | 古いログファイルの削除 |
config.sh | 設定ファイル(共通変数定義) |
注意事項
- このスクリプトは自己責任で使用してください。本番環境への導入前に、テスト環境で十分に動作確認することを推奨します。
- サービス再起動のポリシーは、利用するOpenClawの構成に応じて適宜調整してください。
- ログクリーンアップは指定された保持期間を過ぎたファイルを完全に削除します。バックアップが必要な場合は、別途保存処理を組み込んでください。