关于log4j2子进程无法输出日志的问题

qq_39982851 2018-05-08 02:31:03
设备:树莓派
环境:linux
java环境:sdk1.8
我打算开一个主程序然后再里面用process builder建子进程去管理其他程序的运行状况。
然后我发现单独开其他程序的话log4j2是会按照我的配置把日志输出到文件里的
但是用主程序开其他程序的话,就会只输出主程序的日志,其他程序的不输出日志
然后我本想把主程序做成开机启动,于是写了个bash脚本开启主程序,把那个脚本当做服务开机启动。
然而当我用脚本启动的时候,连主程序也不输出日志了。

我去baidu和谷歌都搜了。。好像都没有类似子进程的问题,只有不同进程对同一日志的记录。但是我的日志输出目录是不一样的,也不是写在同一个日志里。
在Stack Overflow上发了贴,还没有人回。
请问这个是我设置的有问题还是log4j不支持这样的日志输出方法?
有什么好办法?

如果想了解详细程序内容请跟帖,先感谢各位了!
...全文
825 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_39982851 2018-05-09
  • 打赏
  • 举报
回复
引用 1 楼 lye2000000_super 的回复:
应该是设置的问题,应该是log4j找不到配置文件了。。。。
我的程序是maven打包的,配置文件放在jar里,应该不会找不到吧。。
  • 打赏
  • 举报
回复
应该是设置的问题,应该是log4j找不到配置文件了。。。。
oyljerry 2018-05-09
  • 打赏
  • 举报
回复
脚本当服务启动,这个时候程序是session 0的层面,跟你直接双击启动的程序是session 1不同,服务程序的session不同,可能会影响到你的配置文件路径等。
  • 打赏
  • 举报
回复
引用 2 楼 qq_39982851 的回复:
[quote=引用 1 楼 lye2000000_super 的回复:] 应该是设置的问题,应该是log4j找不到配置文件了。。。。
我的程序是maven打包的,配置文件放在jar里,应该不会找不到吧。。[/quote] 单独启动没问题,通过别的程序启动就有问题了。很有可能在classpath里找不到logj的配置文件,所以才会出现那样的问题。只是猜想。。。你可以从这个方面入手看看

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧