Files
rogaining_srv/MIGRATION_STATISTICS_README.md
2025-08-25 18:49:33 +09:00

149 lines
4.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 移行結果統計情報表示スクリプト
## 概要
移行処理の結果を詳細な統計情報として表示するスクリプトです。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/` ディレクトリに保存されます