2014-04-25 28 views
-1

我没有使用过Java的经验,我试图调试一个Java类。该类从C++代码中调用。 Java代码充满了对我非常有用的SysLog调用,但我无法弄清楚输出的位置,如果有的话。我在哪里可以找到SysLog输出?

SysLog是相当简单的初始化是这样的:

public static void initLogger() { 
    if (log == null) { 
     log = new Syslog(); 
    } 
} 

而只是使问题复杂化,这个代码运行作为Windows服务,这意味着它无法显示任何类型的用户界面,甚至没有控制台输出。日志记录必须转到一个文件才有用。

我是否需要做一些事情来启用日志记录?如果是这样,什么?

我需要做一些事来发送记录到文件(S)?如果是这样,什么?

回答

1

有关Syslog的一些信息 - 它最初是作为一种通用的UNIX日志记录服务。它可以记录来自系统的本地消息或从网络上的许多不同服务器收集日志消息。一般来说,任何UNIX系统都会有一些可用的系统日志服务。这是汇总来自多个系统的消息的常用方式。

在Windows上,有出有一些系统日志服务器实现的。如果系统日志服务正在您的Windows机器上运行,那么该消息可能会在那里结束。

然而,真正的问题是:到系统日志服务,并您的Java应用程序发送消息?从理论上讲,您可以配置您的Java应用程序以将系统日志消息发送到远程计算机。或者它可以尝试发送消息到本地主机(因为系统日志在默认端口上侦听)。

所以我认为VD是说是检查你的java应用程序设置,查找系统日志配置设置。您将不得不访问系统日志服务器(在Windows上本地安装一个或者让远程机器进行侦听)。然后使用这link适当地配置你的Java应用程序。

额外的复杂性可能是您的Java环境中使用自定义或特殊sysloghandler。 log4j非常常见,可能是默认设置,但您也可以检查一下。

+0

它是log4j。感谢您的信息,但我会在其他地方追求。 –

相关问题