- PR -

IPアドレスを取得してLog4jに書き込む

1
投稿者投稿内容
未記入
会議室デビュー日: 2004/07/05
投稿数: 2
投稿日時: 2004-07-05 17:59
Log4jを使って出力ファイルにアクセスのあったIPアドレスを書き込みたいのですが
どなたかその方法を教えて頂けますでしょうか。
宜しくお願い致します。
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2004-07-05 18:48
環境はなんですか。Webアプリケーションですか?
で、アクセスというのは具体的にはどんなアクセスのことでしょうか。

どちらにしてもLog4JにIPアドレス云々の情報が自動的に渡るはずがないので、呼び出し側から
明示的に渡してやる必要があります。
佐々木
大ベテラン
会議室デビュー日: 2003/03/30
投稿数: 121
投稿日時: 2004-07-05 19:17
おそらくWEBの話だろうと勝手に決めちゃいますが。。。

logメソッドを呼ぶ度にIPアドレスをログメッセージにくっつけるのは面倒なので、リクエストオブジェクトからクライアントのIPアドレスを取得したら、それをNDCにpushするか、MDCにputしてやると良いですよ。

で、レスポンス返したあとに必ずremoveメソッドで後始末しましょう。(finallyで)
僕のところでは、HTTPのセッションID等をNDCに積んでます。
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2004-07-06 00:47
"WebアプリケーションでクライアントのIPアドレスを取得する方法"は ServletRequest.getRemoteAddr();です。
http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/ServletRequest.html#getRemoteAddr()
未記入
会議室デビュー日: 2004/07/05
投稿数: 2
投稿日時: 2004-07-06 13:08
申し訳ございません
WEBアプリケーションです
上記の内容を早速試してみます
後ほど結果を報告致します
ありがとうございます
1

スキルアップ/キャリアアップ(JOB@IT)