Вы сделали, почти все правильно. Но,
1. Для infoLog'а указали archiveEvery="day", а нужно с большой буквы.
2. maxArchiveFiles отвечает за количество архивов (это файлы, которые создаются после заполнения текущего лога).
Вот для примера target:
<target
name="infoLog"
xsi:type="File"
fileName="${logDir}/Log.info.txt"
archiveFileName="${logDir}/Log.info.{#}.txt"
archiveEvery="Minute"
archiveNumbering="Rolling"
maxArchiveFiles="2"
concurrentWrites="true" />
И код который пишет в лог раз в 20 секунд:
for (int i = 0; i < 100; i++)
{
logger.Info("{0} Log Test", i);
Thread.Sleep(TimeSpan.FromSeconds(20));
}
В папке с логами тогда всегда будут 3 файла:
Log.info.txt
Log.info.0.txt
Log.info.1.txt