Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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 Log4J内存泄漏,多个进程各占用约1G内存_Java_Logging_Memory Leaks_Log4j - Fatal编程技术网

Java Log4J内存泄漏,多个进程各占用约1G内存

Java Log4J内存泄漏,多个进程各占用约1G内存,java,logging,memory-leaks,log4j,Java,Logging,Memory Leaks,Log4j,请看下图 我正在运行Log4J,但使用的是从提供的TimeAndSizeRollingFileAppender 根据网站的说法,这应该是一个被许多公司使用的好版本 所有这些进程独立运行的原因是什么 我正在运行WAR文件,我有以下配置: # DEBUG < INFO < WARN < ERROR < FATAL ==> DEBUG SHOWS ALL, WARN will show WARN, ERROR and FATAL # Variable momomo.l

请看下图

我正在运行Log4J,但使用的是从提供的TimeAndSizeRollingFileAppender

根据网站的说法,这应该是一个被许多公司使用的好版本

所有这些进程独立运行的原因是什么

我正在运行WAR文件,我有以下配置:

# DEBUG < INFO < WARN < ERROR < FATAL ==> DEBUG SHOWS ALL, WARN will show WARN, ERROR and FATAL

# Variable
momomo.log.pattern=%n================================%n%d{yyyy-MM-dd-HH-mm-ss}%n%c%n%m %x%n--------------------------------%n
momomo.log.datepattern='.'yyyy-MM-dd
momomo.log.maxfilesize=5MB

# Root logger option logs all to file
log4j.rootLogger=debug, error, info, console

# global info to console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=${momomo.log.pattern}
log4j.appender.console.Threshold=INFO

# global debug to file
log4j.appender.debug=uk.org.simonsite.log4j.appender.TimeAndSizeRollingAppender
log4j.appender.debug.File=/momomo/Generated/Logs/debug.log
log4j.appender.debug.DatePattern=${momomo.log.datepattern}
log4j.appender.debug.MaxFileSize=${momomo.log.maxfilesize}
log4j.appender.debug.Append=true
log4j.appender.debug.layout=org.apache.log4j.PatternLayout
log4j.appender.debug.layout.ConversionPattern=${momomo.log.pattern}
log4j.appender.debug.Threshold=DEBUG

# global error to file
log4j.appender.error=uk.org.simonsite.log4j.appender.TimeAndSizeRollingAppender
log4j.appender.error.File=/momomo/Generated/Logs/error.log
log4j.appender.error.DatePattern=${momomo.log.datepattern}
log4j.appender.error.MaxFileSize=${momomo.log.maxfilesize}
log4j.appender.error.Append=true
log4j.appender.error.layout=org.apache.log4j.PatternLayout
log4j.appender.error.layout.ConversionPattern=${momomo.log.pattern}
log4j.appender.error.Threshold=ERROR

# This logger just logs for the package momomo.com
log4j.logger.momomo.com=momomo, momomofatal

# momomo debug logger
log4j.appender.momomo=uk.org.simonsite.log4j.appender.TimeAndSizeRollingAppender
log4j.appender.momomo.File=/momomo/Generated/Logs/momomo.log
log4j.appender.momomo.DatePattern=${momomo.log.datepattern}
log4j.appender.momomo.MaxFileSize=${momomo.log.maxfilesize}
log4j.appender.momomo.Append=true
log4j.appender.momomo.layout=org.apache.log4j.PatternLayout
log4j.appender.momomo.layout.ConversionPattern=${momomo.log.pattern}
log4j.appender.momomo.Threshold=DEBUG

# momomo fatal logger
log4j.appender.momomofatal=uk.org.simonsite.log4j.appender.TimeAndSizeRollingAppender
log4j.appender.momomofatal.File=/momomo/Generated/Logs/momomo.fatal.log
log4j.appender.momomofatal.DatePattern=${momomo.log.datepattern}
log4j.appender.momomofatal.MaxFileSize=${momomo.log.maxfilesize}
log4j.appender.momomofatal.Append=true
log4j.appender.momomofatal.layout=org.apache.log4j.PatternLayout
log4j.appender.momomofatal.layout.ConversionPattern=${momomo.log.pattern}
log4j.appender.momomofatal.Threshold=FATAL
#DEBUGDEBUG显示全部,WARN将显示WARN、ERROR和FATAL
#变数
momomo.log.pattern=%n========================================%n%d{yyyyy-MM-dd HH-MM-ss}%n%c%n%m%x%n-------------------------------------------------------------n
momomo.log.datepattern='.'yyyy-MM-dd
momomo.log.maxfilesize=5MB
#根记录器选项将所有日志记录到文件中
log4j.rootLogger=调试、错误、信息、控制台
#控制台的全局信息
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.patternalyout
log4j.appender.console.layout.ConversionPattern=${momomoo.log.pattern}
log4j.appender.console.Threshold=INFO
#全局调试到文件
log4j.appender.debug=uk.org.simonsite.log4j.appender.TimeAndSizeRollingAppender
log4j.appender.debug.File=/momomo/Generated/Logs/debug.log
log4j.appender.debug.DatePattern=${momomo.log.DatePattern}
log4j.appender.debug.MaxFileSize=${momomo.log.MaxFileSize}
log4j.appender.debug.Append=true
log4j.appender.debug.layout=org.apache.log4j.patternalyout
log4j.appender.debug.layout.ConversionPattern=${momomoo.log.pattern}
log4j.appender.debug.Threshold=debug
#文件的全局错误
log4j.appender.error=uk.org.simonsite.log4j.appender.TimeAndSizeRollingAppender
log4j.appender.error.File=/momomo/Generated/Logs/error.log
log4j.appender.error.DatePattern=${momomo.log.DatePattern}
log4j.appender.error.MaxFileSize=${momomo.log.MaxFileSize}
log4j.appender.error.Append=true
log4j.appender.error.layout=org.apache.log4j.patternalyout
log4j.appender.error.layout.ConversionPattern=${momomoo.log.pattern}
log4j.appender.error.Threshold=错误
#此记录器只记录momomo.com包的日志
log4j.logger.momomo.com=momomo,momomomofatal
#momomo调试记录器
log4j.appender.momomo=uk.org.simonsite.log4j.appender.TimeAndSizeRollingAppender
log4j.appender.momomo.File=/momomo/Generated/Logs/momomomo.log
log4j.appender.momomo.DatePattern=${momomo.log.DatePattern}
log4j.appender.momomo.MaxFileSize=${momomo.log.MaxFileSize}
log4j.appender.momomo.Append=true
log4j.appender.momomo.layout=org.apache.log4j.patternalyout
log4j.appender.momomo.layout.ConversionPattern=${momomomo.log.pattern}
log4j.appender.momomo.Threshold=DEBUG
#莫莫莫致命记录器
log4j.appender.momomofatal=uk.org.simonsite.log4j.appender.TimeAndSizeRollingAppender
log4j.appender.momomofatal.File=/momomo/Generated/Logs/momomomo.fatal.log
log4j.appender.momomofatal.DatePattern=${momomomo.log.DatePattern}
log4j.appender.momomofatal.MaxFileSize=${momomo.log.MaxFileSize}
log4j.appender.momofatal.Append=true
log4j.appender.momomofatal.layout=org.apache.log4j.patternalyout
log4j.appender.momomofatal.layout.ConversionPattern=${momomo.log.pattern}
log4j.appender.momofatal.Threshold=FATAL
是的,有很多,但是上面声明的日志记录过程还有很多


服务器现在运行得非常慢,而刚启动时就不是这样了。它每小时都在变慢

使用
jmap
获取堆转储并将其发布到此处使用JDK中的VisualVM连接到进程并找出内存的使用位置。还要注意,您不能立即依赖Linux报告的内存使用情况。@JigarJoshi和\@Thorbjorn:我没有安装VisualVM,但我尝试使用jmap。我无法连接。另一个问题是,这些都列为单独的进程。我正在向tomcat部署WAR,但htop将它们列为单独的进程。我找不到与jmap连接的主进程。当连接到其中一个进程时,我得到:错误附加到进程:sun.jvm.hotspot.debugger.DebuggerException:无法附加到进程如果使用正确版本的
jmap
您应该能够连接到该jvm