Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Java servlet中查找WAS SystemOut.log的位置?_Java_Servlets_Websphere - Fatal编程技术网

如何在Java servlet中查找WAS SystemOut.log的位置?

如何在Java servlet中查找WAS SystemOut.log的位置?,java,servlets,websphere,Java,Servlets,Websphere,在WebSphere application Server v7或更高版本上安装了web应用程序中的Java servlet后,是否有方法确定SystemOut.log文件的文件系统目录,以便读取和写入该目录中的文件 请注意,在WAS上的应用程序中打印或写入Java的System.out,在我看到的每个WAS安装中都会写入SystemOut.log文件 对此,我有两个用例: 我想要一个servlet,它可以读取SystemOut.log中的行并将它们发送到浏览器,以便在客户不允许我访问其开发服

在WebSphere application Server v7或更高版本上安装了web应用程序中的Java servlet后,是否有方法确定SystemOut.log文件的文件系统目录,以便读取和写入该目录中的文件

请注意,在WAS上的应用程序中打印或写入Java的
System.out
,在我看到的每个WAS安装中都会写入SystemOut.log文件

对此,我有两个用例:

  • 我想要一个servlet,它可以读取SystemOut.log中的行并将它们发送到浏览器,以便在客户不允许我访问其开发服务器的文件系统时调试我开发的应用程序
  • 我希望另一个servlet在与SystemOut.log相同的目录中创建自己的日志文件,这样应用程序的日志可以比SystemOut.log中的条目保留更长的时间

默认情况下,
System.out
的位置由
SERVER\u LOG\u ROOT
变量确定(请参阅管理控制台中的
环境/WebSphere变量
)。读取WebSphere变量的值需要使用MBean和一些编码。以下是有用的信息:


日志文件的位置也可以通过管理控制台中的
疑难解答/log
跟踪/server/JVM日志设置。

谢谢。第二个链接提供了相关的代码,但它似乎不适用于我的任何一个用例,因为有一条语句说扩展WebSphere变量需要管理员权限。WAS在后台使用Java Util日志记录。应该可以在运行时访问配置,并从相应的处理程序读取日志文件位置。这不是一个干净的解决方案,但总比没有好。我不知道如何通过
java.util.logging
类获取文件位置。各种
处理程序
类似乎没有任何方法来实现这一点。我可以访问Java系统属性,并在测试服务器上找到一个
logging.properties
文件,但该文件没有说明任何文件路径。我认为WebSphere变量可能会覆盖属性文件。