Well,
I have waited for days before deciding to post this issue, as I was not sure how to state this, resutling into a long detailed post. However, I think it is re
By enumerating over a copy of the collection you can solve this problem. I made the following change to the NLog source and it seems to fix the problem:
internal void GetTargetsByLevelForLogger(string name, IList rules, TargetWithFilterChain[] targetsByLevel, TargetWithFilterChain[] lastTargetsByLevel)
{
foreach (LoggingRule rule in rules.ToList())
{
...