2012-02-28 5 views
2

私は知っている非常に Javaについてはほとんど、JASIG CASは言えません。JASIG CAS:ログファイルの書き込み先を変更するにはどうすればよいですか?

私たちはCentOS 6サーバーにCASを実装しようとしています。 tomcat6がホームディレクトリ(/usr/share/tomcat6/)内のログファイルを書き込むしようとしているようにそれはそう、いくつかの調査の後

java.io.FileNotFoundException: cas.log (Permission denied) 
[...snip...] 
java.io.FileNotFoundException: perfStats.log (Permission denied) 

:私たちは、次のエラーを取得しています。私はこれをchown tomcat: /usr/share/tomcat6で確認してから、再起動後にそのディレクトリにログファイルを作成しました。

他のすべてのログは、/var/log/tomcat6のシンボリックリンクである/usr/share/tomcat6/logsに書き込まれます。

CASを再構成して、これらの2つのログファイルを別のディレクトリに書き込む方法を知りたい場合は/usr/share/tomcat6/logs)?あなたはCASの最新バージョンを持っていると仮定すると

答えて

13

は、それがロギング用にlog4jを使用し、標準のTomcatはCentOSの下にインストールするためにあなたが

$CATALINA_BASE/webapps/cas-server-webapp-VERSION/WEB-INF/classes/log4j.xml 

でのlog4jの設定を見つけることができ、$CATALINA_BASE/usr/share/tomcatだろう。

log4jの設定が変更されていない場合は、ファイルの先頭近くにcas.logを作成するアペンダー「cas」があります。それは次のようになります。

<appender name="cas" class="org.apache.log4j.RollingFileAppender"> 
    <param name="File" value="cas.log" /> 
    <param name="MaxFileSize" value="512KB" /> 
    <param name="MaxBackupIndex" value="3" /> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%d %p [%c] - %m%n"/> 
    </layout> 
</appender> 

あなたがperfStats.logファイルを作成する「fileAppender」という名前の別のアペンダを、見つけることができますさらに下。

<appender name="fileAppender" class="org.apache.log4j.FileAppender"> 
    <param name="File" value="perfStats.log"/> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%m%n"/> 
    </layout> 
</appender> 

Fileパラメータの値が指定されていないディレクトリとファイル名だけでどのように参照してください?したがって、ログファイルは$ CATALINA_BASEディレクトリに作成されます。それらをTomcatログディレクトリに入れるには、値をlogs/cas.loglogs/perfStats.logに変更します。

CASは起動時にlog4j設定を読み込むだけなので、変更を加えたらCASの展開を解除して再デプロイするか、Tomcatをバウンスする必要があります。

関連する問題