2011-12-08 1 views
1

に書き込まれ得ていない私はここにhttp://www.playframework.org/documentation/1.2.4/production#logging指示と同じように私のconf /ディレクトリにlog4j.propertiesファイルを実装しました。それが動作する私のワークステーションにローカルのLog4J application.logでファイルが

、私のログ出力は私のコンソールに表示されて停止し、私のapplication.logファイルの現れ始めました。これは正しい/期待される動作です。

しかし、一度私の本番サーバーにコピーし、この同じアプリケーションはログに記録されません。 application.logは空で、空のままです。

これは、すべてのCentOS Linux上です。

アイデア?事前に

おかげで、 ジョシュ

+0

あなたはPRODサーバー –

+0

上の運用サーバー-Dlog4j.configuration =(log4j.xmlがするパスまたはlog4j.properties)でこのVM引数を設定しなかった、あなたのログへの完全なパスを使用していますか?アプリケーションがあなたが思っている場所で動作していることを確かめますか?ログファイルを削除して再度実行しようとしましたか?ログファイルは再作成されていますか? – Gray

+0

これを設定する方法を説明する記事には、私が理解していないコメントがあります。おそらくこれは関連していますか? application.log.path =/log4j.propertiesをapplication.confに設定されている。しかし、confには、デフォルトのプレイパッケージとクラスパスに追加されていない理由「上記のログの例は、confには、クラスパスにあることを前提とし、thatsの。だからを追加し、つまり、ログファイルが作成されます。 " –

答えて

0

アプリケーションはapplication.logでファイルを書き込む権限を持っていますか?おそらく、javaプロセスは、書き込み権限が不十分なユーザーの下で開始される可能性があります。

+0

私は分かりません。私は残念なことにLinuxの男ではない。パーミッションがLinux上でどのように働いているのかまだ分かりません。そして、私は "ユーザー"のプレイやJavaがどのように動作しているのかよくわかりません。 –

+0

もしそれがパーミッションの問題かもしれないと思うなら、Linux OSチームに環境を設定してその角度を調べてもらうことができます。 –

+1

私のキャリアでは、許可に関連するLinuxでおそらく100のエラーがあります。だからsympthomsが "Windows上で作業していて、Linux上で作業していない"場合、まず私はパーミッションをチェックします。 – korifey

関連する問題