Если все Ваши блоки реализуют единый интерфейс, то у Вас могли быть свойство или параметр конструктора, который позволяет Вам передавать свой локальный экземпляр ILog к динамично загруженным блокам.
Можно получить тот же регистратор путем определения литеральной строки названия регистратора, таким образом получения того же экземпляра регистратора.
log4net.LogManager.GetLogger("SomeLogger");
Что-то о времени выполнения загрузилось, класс предотвращает обычный ILog в классе от работы. Я могу получить допустимый экземпляр ILog, но в отличие от всех других экземпляров это, кажется, не настроено (весь ** Включил флаги, имеют значение false). Возможно, "корневой" регистратор не доступен для классов, загруженных во времени выполнения???
У меня есть глупое решение. Можно установить XmlConfiguration на основной log4net файл конфигурации.
[assembly: log4net.Config.XmlConfigurator(ConfigFile="<configpath>",Watch = true)]
Это не действительно красота.. но это работает.