Изменить значение параметра appender в файлах .config при выпуске (azure конвейеры) - PullRequest
0 голосов
/ 11 февраля 2020

Я использую журнал 4net для входа почти во все проекты в моем. net решении. В настоящее время я настроил appender (AzureTableAppender), конфигурация которого выполняется в соответствующем app.config / web.config каждого проекта. Этот appender имеет параметр с именем «TableName», со связанным значением, представляющим таблицу, в которую отправляются данные. Все работает нормально, но я хотел бы изменить это значение для 2 моих выпусков, так как я хочу, чтобы журналы были где-то еще.
Конфигурация выглядит следующим образом:

<log4net>
      <appender type="log4net.Appender.AzureTableAppender.......
          <param name = "TableName" value = "MyTable" />
....
</log4net>

Подводя итог, я хотел бы изменить значение «TableName» для всех файлов .config (app, web), в зависимости от выпуска. Я использую Azure Конвейеры для моих выпусков. (поскольку я использую конвейерные переменные из gui, я думал об этом, но думаю, что они предназначены только для appSettings, connectionStrings)

1 Ответ

1 голос
/ 12 февраля 2020

Вы можете попробовать Заменить задачу Token .

1. Измените содержимое элемента <log4net> на этот формат:

<log4net>
      <appender type="log4net.Appender.AzureTableAppender.......
            <param name = "TableName" value = "#{MyTable}#" />
            <param name = "ReleaseName" value = "#{MyRelease}#" />
</log4net>

2.Создайте две переменные группы (одна для DEV и другая для Release) с различным содержанием. В вашем конвейере выпуска свяжите их и выберите соответствующую область действия:

enter image description here

При выполнении Replace Token task он заменит #{MyTable}# и #{MyRelease}# с соответствующим значением. (Обратите внимание, что эта задача не будет работать в файлах внутри файла xx.zip) Надеюсь, это поможет, и если я неправильно понимаю ваши требования, не стесняйтесь исправлять меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...