私は現在Webアプリケーションを開発しており、クライアントはサイトでのユーザーアクティビティに関するデータを保存したいと考えています。これは、GoogleAnalyticsが提供できる範囲外です。
私は現在、ウェブサイトのコア機能に関連するテーブルの数が最小限である、素晴らしくシンプルなデータベース構造を持っています。
ユーザーアクティビティを記録するためにデータベーススキーマに多くのテーブルを追加することに少し憤慨しています。また、サイトでのユーザーアクティビティを記録するサービスを追加することで、コードベースを混乱させます。
彼らが録音したいものの例は次のとおりです。
- 既存ユーザーのログイン
- ユーザーによる明示的なログアウト
- 管理者によるパスワードのリセット
- ユーザーによるパスワードのリセット/変更
- ユーザーアカウントの変更(例:管理者権限の付与/削除、またはプロファイルがある場合はプロファイルの変更)
彼らはまた記録したいかもしれません
- 検索フォームに入力された検索パラメータ
- 任意の(コンテンツ)ページへのアクセス
- 任意の(コンテンツ)リンクの選択
- 言語選択
だから私の質問は:
- この機能をデータベースとプロジェクトに追加するだけでよいですか?
- これを可能な限り分離する必要があります。おそらく、この分析データを別のデータベースに保存するか、別のスキーマに保存して、分析サービス用の別のプロジェクトを作成します。
- もうオプションはありますか?
このデータを記録すると、コードベースとデータベースが大きくなり、利益がほとんどなくなると思います…。