如何使 log4j 与码头一起工作?
How to make log4j work with jetty?
我想用 log4j 做 jetty 服务器日志。当我使用 IDEA 部署 exploded war
时,效果很好。 IDEA 在 /tmp
目录中创建此文件 (root.xml
):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="contextPath">/</Set>
<Set name="resourceBase">/home/username/Desktop/project/ROOT/target/root</Set>
</Configure>
在我将此文件复制到 /opt/jetty/webapps
并重新启动码头服务后,它停止记录。我没有改变项目中的任何其他内容。我什至没有更改目录,一切都是一样的。
我只想在没有IDEA的情况下部署。
如何让 log4j 与 Jetty 9 服务器上手动部署的分解 war
一起工作?
当您从 IDEA 部署时,它会从特权用户运行并具有对日志的写入权限。
服务器有自己的日志文件和自己的用户。它可能没有适当的权限来写入您正在检查的日志。所以你应该检查服务器自己的日志文件。也许您会发现 FileNotFoundException
和 Permission Denied
。您需要授予 Jetty 用户编辑日志文件的权限。
我想用 log4j 做 jetty 服务器日志。当我使用 IDEA 部署 exploded war
时,效果很好。 IDEA 在 /tmp
目录中创建此文件 (root.xml
):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="contextPath">/</Set>
<Set name="resourceBase">/home/username/Desktop/project/ROOT/target/root</Set>
</Configure>
在我将此文件复制到 /opt/jetty/webapps
并重新启动码头服务后,它停止记录。我没有改变项目中的任何其他内容。我什至没有更改目录,一切都是一样的。
我只想在没有IDEA的情况下部署。
如何让 log4j 与 Jetty 9 服务器上手动部署的分解 war
一起工作?
当您从 IDEA 部署时,它会从特权用户运行并具有对日志的写入权限。
服务器有自己的日志文件和自己的用户。它可能没有适当的权限来写入您正在检查的日志。所以你应该检查服务器自己的日志文件。也许您会发现 FileNotFoundException
和 Permission Denied
。您需要授予 Jetty 用户编辑日志文件的权限。