将信息记录到服务器的默认日志文件中

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将信息记录到服务器的默认日志文件中相关的知识,希望对你有一定的参考价值。

我的Dev机器有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");

    }

}
答案

最简单的解决方案是在install的根记录器上简单地使用java.util.logging.ConsoleHandler myproject。这会将你的所有项目输出都指向tomcat8-stderr.YYYY-MM-DD.log

否则,您可以创建一个ServletContextListener并在项目的根记录器上安装自定义处理程序,格式化并记录到ServletContext.log methods

以上是关于将信息记录到服务器的默认日志文件中的主要内容,如果未能解决你的问题,请参考以下文章

部署tomcat在windows服务器下,将tomcat控制台日志记录到日志文件中

如何通过单击适配器类中代码的项目中的删除按钮来删除列表视图中的项目后重新加载片段?

nginx日志不记录静态文件访问和缓存

Eclipse中代码报版本错误

ASP.NET记录错误日志

PythonStudy——日志模块 logging