Constantin Makogon created LOG4NET-647:
------------------------------------------
Summary: Log4Net do not work inside of Finalize method
Key: LOG4NET-647
URL: https://issues.apache.org/jira/browse/LOG4NET-647
Project: Log4net
Issue Type: Bug
Components: Core, Other
Affects Versions: 2.0.8
Reporter: Constantin Makogon
Log4Net do not log while it's called from Finalize method. It particularly
annoying if we want monitor destroyed object which was not closed (without call
to Close method). Inside of Finalize method the logger object is not null but
has no effect.
Example:
{code:visualbasic}
Class LoggerTest
Private ReadOnly logger As log4net.ILog =
log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)
Public Shared Sub Main()
log4net.Config.XmlConfigurator.Configure(New
System.IO.FileInfo("LoggerTest.log4net"))
Dim c As New LoggerTest
c.SayHello()
End Sub
Public Sub SayHello()
System.Console.WriteLine("hello")
logger.Info("hello")
End Sub
Protected Overrides Sub Finalize()
System.Console.WriteLine("finalize")
logger.Info("finalize")
End Sub
End Class
{code}
Config file
{code:xml}
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<log4net>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level - %message%newline"
/>
</layout>
</appender>
<root>
<level value="ALL"/>
<appender-ref ref="ConsoleAppender"/>
</root>
</log4net>
</configuration>
{code}
Result:
{code}
hello
2020-04-07 15:33:30,399 [1] INFO - hello
finalize
{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)