質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Tomcat

TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

Q&A

解決済

2回答

7711閲覧

JSPのパラメーターをサーバーのログへ出力させる方法は?

退会済みユーザー

退会済みユーザー

総合スコア0

Tomcat

TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

0グッド

0クリップ

投稿2015/08/01 04:14

編集2015/08/01 09:40

JSPのパラメーターまで、Tomcat?Apatch?で、ログを出力させる方法を
教えてください。

~JSP」までの呼び出された時のログは、デフォルト?で出力できていますが、
そのJSPの後ろの続きの test.jsp?name=mio&nenrei=23 とかの
「?name=mio&nenrei=23」がログへ出力されていません。

■システム構成
スマフォやiPadの端末とLinuxサーバーを接続して、使用するアプリを開発しています。
サーバーは、JSPで端末から依頼を受け、
JAVA内で、DB接続や、ファイル操作をします。

サーバーの構成は、
CentOS, Tomcat(Apatch)、JAVAなどです。

Tomcat?Apatch?などの、ログ出力の設定ファイルを
変更すれば、パラメーターも出力できるようになるのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

Apatch → Apache

ま、それはさておき…

Apacheのサーバログを追いかければパラメータも載ってるかと思うのですがいかがでしょうか。
Javaでアクセスログを取りたいならlog4j使うとよいかもしれませんね。

http://www.nurs.or.jp/~sug/soft/log4j/index.htm

投稿2015/08/01 10:46

yu-ri

総合スコア634

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/08/02 00:08

ご指摘があったので、ログの調査をしてみました。(パラメータが載ってないというのは、聞いた話なので、自分の目で確かめることに)。 aptch-tomcat-~/logsの中のログには、パラメータは、のっているログはありませんでしたが、 httpd~/logs/access_log?????には、パラメータがのっていました。ありがとうございます。 夜中の4時や5時に、誰かがアクセスしたこともわかりました。おそらくロボット。 ロボットが情報を持っていく?(サーバー歴は、このサーバーを立てたのが初めてなので、超ド級初心者のヘラヘラピラピラのへなちょこです)。
退会済みユーザー

退会済みユーザー

2015/08/02 00:09

逆に、JSPから端末へ、JSONを返すのですが、JSONが乗っているログは、みつかりませんでした。
退会済みユーザー

退会済みユーザー

2015/08/03 00:39 編集

昼間も夜中も、だれかがアクセスしに来ているようで、JSP名がなくて空っぽなので、失敗しているようですが、気持ち悪いです。 一応、WEBのルートには、 robots.txt User-agent: * Disallow: / を置いてあるので、行儀の良い、ロポットは退散してくれるはずですが。 行儀の悪いロボットが入り込むのかもしれません。全部、退散させたい。
yu-ri

2015/08/02 07:40

robots.txtにその記述があればクローラは巡回しないはずですよ。 外部公開しており、かつクローラを弾いているとなると何かしらのWeb攻撃を受けているのかもしれませんね。 アクセス元のIPからプロバイダの場所が絞り込めますので、やってみるとよいかもしれません。
退会済みユーザー

退会済みユーザー

2015/08/03 00:39

承知しました。 IDアドレスをURLにのせて、HTMLで何かページが開かないかやってみます。 そうすれば、呼び出しもとのページが開くかくもしれません。
guest

0

tomcatでは、javax.servlet.http.HttpServletRequest#getQueryString()で取得できると思います。
(HTTPメソッドがGET以外の場合は、違う方法で取得する必要がありそうです)

apacheのアクセスログであれば、%qを指定すると出力できるようです。
参考サイト

投稿2015/08/01 08:50

jcs502ulf

総合スコア307

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/08/01 09:42

ご回答ありがとうございます。 今、サーバー稼働中なので、すぐにできないですが、 これをどこかへ?組み込んで?、ログにパラメータまで出力されるように、 設定したいと思います。 どこにどうやって組み込むかは、インターネットを調べてみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問