メインコンテンツへスキップ
このクックブックでは、フックを使用してDroidの使用状況を追跡し、開発メトリクスを収集し、パターンを分析し、開発ワークフローに関する洞察を生成する方法を説明します。

仕組み

ロギングおよび分析フックでは以下のことができます:
  1. ツール使用状況の追跡: Droidが最も頻繁に使用するツールをログに記録
  2. パフォーマンスの測定: セッション期間、コマンド実行時間を追跡
  3. パターンの分析: 一般的なワークフローとボトルネックを特定
  4. レポートの生成: 使用状況の概要と洞察を作成
  5. コストの監視: トークン使用量とAPIコストを追跡

前提条件

ロギングとデータ収集のためのツール:

基本的なロギング

全コマンドのログ記録

Droidが実行するすべてのコマンドを追跡します。 .factory/hooks/log-commands.shを作成:
~/.factory/hooks.jsonに追加:
ログの分析:

ファイル変更の追跡

すべてのファイル編集と書き込みをログに記録します。 .factory/hooks/track-file-changes.shを作成:
データベースへのクエリ:

セッション期間の追跡

セッションの継続時間を測定します: .factory/hooks/track-session.shを作成:
フックに追加:
セッション統計のクエリ:

高度な分析

使用状況ヒートマップ

Droidが最も使用される時間帯を追跡します: .factory/hooks/usage-heatmap.pyを作成:
定期的に実行:

ツール使用統計

最も使用されているツールを追跡します: .factory/hooks/tool-stats.shを作成:
すべてのツールのPreToolUseに追加:
レポートの生成:

パフォーマンスメトリクス

フック実行パフォーマンスを追跡します: .factory/hooks/perf-monitor.shを作成:
パフォーマンスの分析:

コスト追跡

トークン使用量とAPIコストを監視します: .factory/hooks/track-costs.shを作成:
コストのクエリ:

週次レポートの生成

使用状況レポートをコンパイルします: .factory/hooks/weekly-report.pyを作成:
週次でスケジュール:

ベストプラクティス

1

構造化ログを使用

クエリしやすいようにJSONまたはデータベースにログを記録します:
2

パフォーマンスへの影響を最小化する

ロギングフックを高速に保ちます:
3

機密データを保護する

シークレットや認証情報をログに記録しないでください:
4

ログをローテーションする

ログファイルが大きくなりすぎないようにします:
5

分析をオプトインにする

ユーザーのプライバシーを尊重します:

トラブルシューティング

問題: ログファイルがディスク容量を過度に消費する 解決策: ログローテーションを実装する:
問題: 同時アクセス中にSQLiteデータベースがロックされる 解決策: WALモードとリトライロジックを使用する:
問題: フックの実行に時間がかかりすぎる 解決策: 非同期ロギングを使用する:

関連項目