2017-12-19 22 views
0

私の開発マシンにはJBossがあり、実動サーバーはAWS上でtomcat8を実行しています。サーバーのデフォルトログファイルに情報を記録します

Log (java.util.loggin)をデフォルトディレクトリのデフォルトログファイルに設定するにはどうすればよいですか?たとえば、各サーバのログファイルのデフォルトパスは次のとおりです。 (なしサードパーティのロガーください)

/ログ/ tomcat8 /カタリナ

のjboss-4.0.4 /サーバー/ some_server_conf /ログ/私は見てきたいくつかのcode examples

FileHandler("file.log")が提供されますが、このログはプロジェクトフォルダ内にローカルに存在し、本番環境では外部からアクセスできません。アプリケーションをルートログシステムの一部にして、ログ情報をデフォルトのディレクトリとデフォルトファイルに追加します。

横方向の考え方:運用サーバーの戦略が完全に異なるかどうかを教えてください。

理由の一部は、最後の100行を要求することによってAWSからログファイルを見るほうが簡単で、実行中のアプリケーションに関していくつかの意味のある情報を追加したいと思います。

public class Service { 

    private static Logger logger = Logger.getLogger("myproject"); 

    public Service() { 
     logger.log(Level.INFO, "abc"); 

    } 

} 

答えて

0

最も簡単な解決策は、あなたのmyprojectのルートロガーに単に​​java.util.logging.ConsoleHandlerになります。これにより、すべてのプロジェクト出力がtomcat8-stderr.YYYY-MM-DD.logに送られます。

ServletContextListenerを作成し、ServletContext.log methodsにフォーマットしてログするプロジェクトのルートロガーにカスタムハンドラーをインストールすることができます。

関連する問題