# 移行結果統計情報表示スクリプト ## 概要 移行処理の結果を詳細な統計情報として表示するスクリプトです。Docker Compose環境で実行可能で、移行データの品質チェックや分析に役立ちます。 ## 実行方法 ### 1. Docker Composeで実行 ```bash # 統計情報を表示 docker compose exec app python migration_statistics.py # または Makeタスクを使用 make migration-stats ``` ### 2. 他の移行関連コマンド ```bash # 移行実行 make migration-run # Location2025移行 make migration-location2025 # データ保護移行 make migration-data-protection # データベースシェル make db-shell # アプリケーションログ確認 make app-logs ``` ## 表示される統計情報 ### 📊 基本統計情報 - 各テーブルのレコード数 - 全体のデータ量概要 ### 🎯 イベント別統計 - 登録イベント一覧 - イベント別参加チーム数、メンバー数、エントリー数 ### 📍 GPSチェックイン統計 - 総チェックイン数、参加チーム数 - 時間帯別チェックイン分布 - CP利用ランキング(上位10位) ### 👥 チーム統計 - 総チーム数、クラス数 - クラス別チーム分布 - 平均メンバー数 ### 🔍 データ品質チェック - 重複データチェック - 異常時刻データチェック - データ整合性チェック ### 📄 JSON出力 - 統計情報をJSONファイルで出力 - 外部システムでの利用や保存に便利 ## 出力例 ``` ================================================================================ 📊 移行データ基本統計情報 ================================================================================ 📋 テーブル別レコード数: テーブル名 日本語名 レコード数 ----------------------------------------------------------------- rog_newevent2 イベント 12件 rog_team チーム 450件 rog_member メンバー 1,200件 rog_entry エントリー 450件 rog_gpscheckin GPSチェックイン 8,500件 rog_checkpoint チェックポイント 800件 rog_location2025 ロケーション2025 50件 rog_customuser ユーザー 25件 ----------------------------------------------------------------- 合計 11,487件 ================================================================================ 🎯 イベント別統計情報 ================================================================================ 📅 登録イベント数: 12件 イベント詳細: ID イベント名 開催日 登録日時 ------------------------------------------------------------ 1 美濃加茂 2024-05-19 2024-08-25 10:30 2 岐阜市 2024-04-28 2024-08-25 10:30 3 大垣2 2024-04-20 2024-08-25 10:30 ... ``` ## トラブルシューティング ### データベース接続エラー ```bash # コンテナの状態確認 docker compose ps # PostgreSQLログ確認 make db-logs # アプリケーションログ確認 make app-logs ``` ### 環境変数の確認 ```bash # 環境変数が正しく設定されているか確認 docker compose exec app env | grep POSTGRES ``` ### 手動でのデータベース接続テスト ```bash # PostgreSQLコンテナに直接接続 docker compose exec postgres-db psql -U admin -d rogdb # テーブル確認 \dt # 基本的なクエリテスト SELECT COUNT(*) FROM rog_gpscheckin; ``` ## 関連ファイル - `migration_statistics.py` - 統計表示メインスクリプト - `migration_final_simple.py` - GPS記録移行スクリプト - `migration_location2025_support.py` - Location2025移行スクリプト - `migration_data_protection.py` - データ保護移行スクリプト - `Makefile` - 実行用タスク定義 ## 注意事項 - Docker Composeが正常に起動していることを確認してください - PostgreSQLコンテナが稼働していることを確認してください - 統計情報は実行時点のデータベース状態を反映します - JSON出力ファイルは `/app/` ディレクトリに保存されます