2011-07-05 6 views
1

私が取り組んでいるウェブアプリケーションの管理者は、「私はすべてを知りたい」と尋ねます。ログ。彼はそれらが接続されたときに、他のユーザーが何をしたか、すべてを追跡したいウェブアプリへ(ログイン):JSF Webアプリケーションユーザーのログ。の仕方?

  • 彼/彼女が訪れた何ページ。
  • 実行した操作。
  • どのエンティティ(JPAエンティティ)で操作を実行しましたか。
  • 成功したとき、彼女はどんな正確な時間に所定の行動を行ったのですか?
  • 彼/彼女が修正した特定のレコードの属性。
  • このユーザーのユーザープリンシパル。

私は今何ができるすべては、管理者がユーザープリンシパル、このユーザーがログインし、ログアウト時間を見つけたCSVファイルをエクスポートしています。 また、対応するテーブルの変更を追跡するために、履歴というテーブルをデータベースに作成しました。 (このEclipseLinkカスタマイザの問題は、データベース表が(属性の追加/削除)で変更されており、対応するエンティティが2つありません。回(1メインテーブル内の時間と履歴テーブル内の2回目)!

第三ライブラリ「log4jの」のような何かがそれを行うだろうか?

  • あらゆる選択肢、ソリューション、またはより良いプラクティスがあります私のissuに関連して!

よろしくお願いいたします。

答えて

2

ページ/アクションを取得するためのJSFとデータにアクセスするためのJPAの両方について調べます。インターセプタ/リスナで、log4jを使用してファイルにログすることができます。

EclipseLink Listeners

Hibernate Interceptors(比較用)

JSF Listeners

関連する問題