我在我的web.config
文件中配置了许多已命名的appender,我想知道是否可以将这些作为标准部署的一部分进行正常变量转换?
我希望能够改变的是connectionString
XML看起来像这样:
<appender name="AdoNetAppender_DNOA"
type="log4net.Appender.AdoNetAppender">
<immediateFlush value="true" />
<connectionType value="System.Data.SqlClient.SqlConnection,
System.Data, Version=1.0.3300.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<connectionString
value="data source=MyServer;initial catalog=DNOALog_Dev;
integrated security=false;persist security info=True;
User ID=UserId;Password=pwd" />
答案 0 :(得分:3)
查看Octopus Deploy documentation,可能不是。
但是,从1.2.11开始,log4net能够从web.config文件的connectionStrings
部分按名称引用ConnectionString:
<connectionStringName value="ConnStringName" />
然后,您可以将您的log4net连接字符串保存在connectionStrings部分中,在日志配置中按名称引用它,并使用Octopus转换连接字符串,如文档中那样。
(请注意,如果您使用的是早期版本的log4net,那么如果您有其他组件依赖于旧版本,则升级可能会出现问题,如the signing key changed in 1.2.11 as well)
答案 1 :(得分:2)
您可以使用Octopus 2.3,利用新的变量替换功能。使用此代码看起来像这样:
<connectionStringName value="#{ConnStringName}" />
在你的版本中,你会传递一个基于环境机器的变量或任何感觉良好的变量,这应该让你想要你想要的。
查看博客文章了解更多信息。 Variable Substitution