プロジェクト

全般

プロフィール

バグ #361

未完了

claude-searchサービス修正計画

Redmine Admin さんが約9時間前に追加. 約9時間前に更新.

ステータス:
進行中
優先度:
急いで
担当者:
-
開始日:
2025-06-07
期日:
進捗率:

0%

予定工数:

説明

概要

claude-searchサービスの問題修正計画

親チケット

#360 claude-searchサービスの現状調査と改善

修正計画詳細

フェーズ1: 緊急修正(優先度: 高)

1.1 APIのSQLクエリ修正

  • 問題: /app/main.py 33行目のSQLクエリが不完全
  • 現状: WHERE title LIKE LIMIT 10 ($1プレースホルダー欠落)
  • 修正: WHERE title LIKE $1 LIMIT 10
  • 作業時間: 15分
  • 影響: 検索機能の復旧

1.2 データベース接続文字列の修正

  • 問題: ハードコードされたコンテナ名 a863ecbecef0_claude-search-db
  • 修正: 環境変数またはサービス名 claude-search-db を使用
  • 作業時間: 20分

フェーズ2: インフラ整理(優先度: 中)

2.1 重複コンテナの整理

  • 現状: claude-search-ui と claude-search-web の2つのNginxコンテナ
  • 作業:
    1. 各コンテナの役割確認
    2. 不要なコンテナの停止・削除
    3. docker-compose.yml の整理
  • 作業時間: 30分

2.2 Nginx設定の修正

  • ファイル: /etc/nginx/sites-enabled/claude.call2arm.com.conf
  • 修正内容:
    # 現状: proxy_pass http://192.168.208.3:3005;
    # 修正: proxy_pass http://claude-search-api:8000;
    
  • 作業時間: 20分

フェーズ3: 品質改善(優先度: 低)

3.1 ヘルスチェックの改善

  • APIのヘルスチェックエンドポイント強化
  • タイムアウト設定の調整
  • 作業時間: 30分

3.2 ログ設定の改善

  • エラーログの詳細化
  • ログローテーション設定
  • 作業時間: 20分

フェーズ4: テストと検証

4.1 動作確認

  • 検索機能のテスト
  • ヘルスチェックの確認
  • Nginx経由でのアクセステスト
  • 作業時間: 30分

作業手順

1. バックアップ

cd /root/claude-search-system
cp api/main.py api/main.py.backup
docker-compose -f docker-compose-api.yml ps > containers_backup.txt

2. API修正

# SQLクエリ修正
docker exec claude-search-api sed -i 's/WHERE title LIKE  LIMIT/WHERE title LIKE $1 LIMIT/' /app/main.py
# 再起動
docker-compose -f docker-compose-api.yml restart claude-search-api

3. コンテナ整理

# 状態確認
docker ps -a | grep claude-search
# 不要なコンテナ停止
docker stop [不要なコンテナID]
docker rm [不要なコンテナID]

4. Nginx設定更新

# 設定編集
sudo nano /etc/nginx/sites-enabled/claude.call2arm.com.conf
# 構文チェック
sudo nginx -t
# リロード
sudo systemctl reload nginx

所要時間

  • 合計作業時間: 約3時間
  • 緊急修正のみ: 約35分

リスクと対策

  • リスク: 本番環境での直接修正
  • 対策: 各ステップでバックアップとロールバック手順を準備

成功基準

  1. APIのヘルスチェックがhealthyになる
  2. 検索機能が正常に動作する
  3. claude.call2arm.comでアクセス可能
  4. エラーログが出力されない

Redmine Admin さんが約9時間前に更新

  • ステータス新規 から 進行中 に変更

修正作業を開始します。

作業開始時刻

2025-06-07 23:15 JST

作業担当

VPS-ROOT自律開発環境

作業手順

  1. バックアップ作成
  2. フェーズ1: 緊急修正(SQLクエリ、DB接続)
  3. 動作確認
  4. フェーズ2以降は状況により実施

Redmine Admin さんが約9時間前に更新

フェーズ1完了報告

実施内容

  1. バックアップ作成

    • api_backup_20250607 作成
    • containers_backup_20250607.txt 作成
  2. SQLクエリ修正

    • main.py 33行目: WHERE title LIKE $1 LIMIT 10 に修正
    • 検索機能が正常動作することを確認
  3. DB接続文字列修正

    • ハードコードされたコンテナIDをclaude-search-dbに変更
    • 接続成功を確認
  4. APIヘルスチェック

    • /api/v2/health{"status": "healthy", "database": "connected"} を返却
    • 検索エンドポイントが正常応答(500エラー解消)

フェーズ2部分実施

  • 重複コンテナ削除
    • claude-search-ui を停止・削除(claude-search-webを使用)

動作確認結果

# APIルート
{"status":"ok","version":"2.0.0"}

# 検索テスト
{"results": [], "total": 0}  # 正常応答

# ヘルスチェック
{"status": "healthy", "database": "connected"}

残作業

  • Nginx設定のコンテナ名ベース化
  • 完全な動作テスト

緊急修正は完了しました。

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