我在一台Linux机器上运行两个JVM(server1和server2)。&我想将每个JVM的日志从默认目录移动到自定义目录。
就像是 -
/data/logs/$JVM_NAME/
这样最终的日志就会进入类似目录的目录
/data/logs/server1/
&
/data/logs/server2/
我了解到jboss.server.log.dir
可以在服务器启动参数中设置变量。然后,我尝试了以下启动命令。
nohup sh /appl/isaac/jboss/jboss-eap-6.4/bin/domain.sh -b some.server.domain.com -bmanagement some.server.domain.com -Djboss.domain.log.dir=/data/logs -Djboss.server.log.dir=/data/logs/ > /tmp/domain.out 2>&1 &
一切正常。并且日志正在被写入/data/logs/
。
但是我不确定如何在这些参数中添加变量以为该计算机上的每个JVM添加一个带有JVM名称的子目录。这样就可以将日志写入/data/logs/$JVM_NAME/
。
这是WildFly 9中已解决的问题。
如果您不介意一个额外的目录,则可以将其放入诸如/data/logs/servers/server1
和的目录中/data/logs/servers/server2
。为此,您只需要更改directory-grouping
主机上的属性即可。
/host=master:write-attribute(name=directory-grouping, value=by-type)
然后像传递命令一样传递系统属性。您应该最终得到如下所示的内容。
├── host-controller.log
├── process-controller.log
└── servers
├── server-one
│ └── server.log
└── server-two
└── server.log
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句