36

我正在使用Visual Studio 2012在 VB.NET 中构建 Windows 服务。我在我的项目中包含了log4net来处理有关服务执行的日志信息。我创建了一个log4net.config文件,并Copy if newer在其Copy to Output Directory属性中进行了标记。

我在我的解决方案中添加了一个 Installshield LE 安装项目,并Myproject.Primary Output在要包含的文件中进行了选择。我希望我的log4net.config文件包含在设置中,因为它被标记为在输出中复制,但是当我实际安装它时,它不包括在内。我已经进行了研究,发现我可以将log4net.config 转到Build Actionto Content,然后也包含Myproject.Content Files在我的安装项目中。事实证明它有效。

但是,在阅读了关于 SO 的这个答案后,我注意到 Build Action->Content 用于将文件作为流获取,这并不是我真正想要实现的

我想知道是否有其他方法,推荐的方法将我的 log4net.config 文件从构建中包含到我的 Installshield 安装项目中?

4

1 回答 1

1

如何在 App.config 文件中添加 loggly 相关配置,如下所示。我正在使用它在 Window Service 中托管 WCF 服务,它对我来说很好用。

   <configSections>
        <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
  </configSections>

      <log4net>
        <root>
          <level value="ALL" />
          <appender-ref ref="LogglyAppender" />
        </root>
        <appender name="LogglyAppender" type="log4net.loggly.LogglyAppender, log4net-loggly">
          <rootUrl value="https://logs-01.loggly.com/" />
          <inputKey value="abcdefgh" />
          <tag value="log4net" />
        </appender>
      </log4net>
于 2018-12-14T17:35:42.207 回答