プロジェクト

全般

プロフィール

バグ #866

未完了

シェアラボサーバー対応モジュラー式Bashモニターシステム設計・開発

Redmine Admin さんが約2ヶ月前に追加. 約2ヶ月前に更新.

ステータス:
新規
優先度:
高め
担当者:
-
開始日:
2025-07-04
期日:
進捗率:

0%

予定工数:

説明

モジュラー式Bashモニターシステム - シェアラボサーバー対応版

📋 プロジェクト目標

現在動作中のbash_hook.pyをシェアラボサーバー環境に最適化したコア機能+プラグイン方式で再設計。共用サーバーの制約下で確実にデプロイ・稼働可能なシステムを構築。

🏗️ 環境制約対応

サーバー環境

  • サーバー: xb874667.xbiz.jp (sv722.xbiz.ne.jp)
  • OS: Rocky Linux 8.10
  • 権限: 一般ユーザー(xb874667)
  • Python: 3.6.8(標準ライブラリのみ)
  • 制約: 共用サーバー、root権限なし、外部ライブラリインストール不可

利用可能リソース

  • 標準Pythonライブラリ: os, sys, subprocess, threading, time, sqlite3, signal, fcntl
  • 既存コード: ~/monitor/scripts/bash_hook.py (422行、正常稼働中)
  • DB: ~/monitor/db/monitor.db
  • ログ: ~/monitor/logs/

🎯 実装必須4機能(前回未実現)

  1. ウォッチドッグ監視: プロセス全体監視・強制終了機構
  2. 4層防御システム: 段階的プロセス制御
  3. プロセスグループ管理: ゾンビプロセス完全防止
  4. bash競合回避: EAGAIN エラー解決

📐 シンプル化アーキテクチャ

~/monitor/scripts/
├── bash_hook.py (既存・稼働中)
├── modular_monitor.py (新規コア: 150行以下)
├── plugins.py (全プラグイン統合: 300行以下)
└── config.ini (設定ファイル)

🚀 実装優先順位

  1. Phase 1: コア設計・基本プラグイン(ProcessControl, Watchdog)
  2. Phase 2: 高度プラグイン(ProcessManagement, CommandRetrieval)
  3. Phase 3: 統合テスト・並行稼働検証
  4. Phase 4: 本格デプロイ・既存システム置換

📊 成功指標

  • プロセス増殖: 0個(完全防止)
  • EAGAIN エラー: 30% → 5%以下
  • ゾンビプロセス: 0個
  • 24時間連続稼働: 99%以上
  • 既存機能100%維持

⏰ 見積もり

  • 予想トークン量: 約20K-30Kトークン
  • 基準作業時間: 6-8時間
  • 技術スタック係数: 1.3(Python + システム設計)
  • 最終見積: 8-10時間 (1.0-1.25人日)

🔧 技術アプローチ

  • 単一ファイル構成でシンプル化
  • 標準ライブラリのみ使用
  • 既存システムとの段階的移行
  • 共用サーバー制約に完全対応

他の形式にエクスポート: Atom PDF