Taking a step back, I'd also like you to check out: https://github.com/fluffynuts/dotnet-utils
In particular, there are two utils in there which may help with determining what's going on, especially if the problem is something early like failure to resolve an assembly In the bin folder, there are: - toggle-fusion.cmd - asmdeps.exe If you're unsure about the latter, you're free to build your own from the source in that repo -- the binary is supplied for convenience only Here's what they do: toggle-fusion.cmd will toggle fusion logging on the host machine. Be aware that fusion logging will negatively impact performance _a lot_ but you'll end up with logs in C:\fusion-logs telling you about errors resolving assemblies asmdeps.exe will give you information about assembly dependencies. By default, when it runs, it shows you a colored tree-view of assembly dependencies for the assemblies provided on the CLI. You can turn off color and add `-p` to get paths for the assemblies that are resolved (and would be loaded at runtime). Both should help to track down a missing assembly -- whether that's missing because there is no {X}.dll or missing because assemblies further up the chain are expecting a different version or an assembly with a different public key. -d On 2020/09/08 18:52:09, Davyd McColl <davyd.mcc...@codeo.co.za> wrote: Have you tried an assembly rebind to force resolution to 2.0.9? -d On September 8, 2020 18:00:45 "Joseph A. MITOLA" <jmit...@berkeley.edu> wrote: Hi Davyd, The weird thing is everything had been working fine with same configuration, framework version 4.6, etc. and all I did was update the nuget package for log4net from 2.0.8 to 2.0.9. After that IIS w3wp process along with perfmon.dll process on the deployment server crashed when the application was launched. No error logs were reported even when I set the internal debug to true, nothing. But then, if I revert the nuget package back to 2.0.8, everything is normal again including the logs with the internal debugging turned on. So, it makes me think that maybe the 2.0.9 version is missing a dependency library or something but I couldn't find anything online to that effect. Here is my config, I'm using RollingFileAppender, AdoNetAppender, and SmtpAppender <log4net> <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender"> <file type="log4net.Util.PatternString" value="C:/logs/contentapps-proxy_%date{yyyyMMdd}.log" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <rollingStyle value="Date" /> <datePattern value="yyyyMMdd" /> <appendToFile value="true" /> <maxSizeRollBackups value="14" /> <maximumFileSize value="1024KB" /> <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%-5p %date{yyyy-MM-dd hh:mm:ss tt} [%thread] %m%n" /> </layout> <preserveLogFileNameExtension value="true" /> </appender> <appender name="CustomAdoNetAppender" type="ContentAppsProxy.Filters.CustomAdoNetAppender"> <bufferSize value="1" /> <connectionType value="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" /> <commandText value="INSERT INTO Log4Net_Error ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)" /> <parameter> <parameterName value="@log_date" /> <dbType value="DateTime" /> <layout type="log4net.Layout.RawTimeStampLayout" /> </parameter> <parameter> <parameterName value="@thread" /> <dbType value="String" /> <size value="255" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%thread" /> </layout> </parameter> <parameter> <parameterName value="@log_level" /> <dbType value="String" /> <size value="50" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%level" /> </layout> </parameter> <parameter> <parameterName value="@logger" /> <dbType value="String" /> <size value="255" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%logger" /> </layout> </parameter> <parameter> <parameterName value="@message" /> <dbType value="String" /> <size value="4000" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%message" /> </layout> </parameter> <parameter> <parameterName value="@exception" /> <dbType value="String" /> <size value="2000" /> <layout type="log4net.Layout.ExceptionLayout" /> </parameter> </appender> <appender name="CustomSmtpAppender" type="ContentAppsProxy.Filters.CustomSmtpAppender"> <bufferSize value="512" /> <lossy value="false" /> <evaluator type="log4net.Core.LevelEvaluator"> <threshold value="Error" /> </evaluator> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%message" /> </layout> <priority value="High" /> </appender> <root> <level value="ALL" /> <appender-ref ref="LogFileAppender" /> <appender-ref ref="CustomAdoNetAppender" /> <appender-ref ref="CustomSmtpAppender" /> </root> </log4net> Joseph A. Mitola, Information Systems Analyst University of California, Berkeley IST - Enterprise Applications 2195 Hearst Avenue, 250-29 Berkeley, CA 94720-4876 510-508-4443 jmit...@berkeley.edu [mailto:jmit...@berkeley.edu] From: Davyd McColl [mailto:davyd.mcc...@codeo.co.za] Sent: Tuesday, September 8, 2020 12:08 AM To: jmit...@berkeley.edu [mailto:jmit...@berkeley.edu] Cc: dev@logging.apache.org [mailto:dev@logging.apache.org] Subject: RE: issues with log4net 2.0.9 under IIS for projects using .net framework 4.5+ Hi Joseph I've performed a (rather belated) upgrade to log4net 2.0.9 on a work project targeting net462 and, apart from having to perform some assembly rebinds to handle dependencies which expect log4net 2.0.8, it's working fine with an ado.net appender and a rolling log file appender, so I'd really like to know more about your environment & configuration. -d