调试 ADO log4net 附加程序(不会附加)

2023-11-29

我以前曾这样做过,但现在不起作用,在过去的两个小时里我一直在抓狂地试图弄清楚它。

我有几个附加程序,其中一些用于“主”日志,另一个用于另一个“任务”日志。主日志有 4 个附加程序:控制台、内存、文件和 DB (sqlite3)。任务日志有 3 个附加程序:内存、文件和 DB(也是 sqlite)。

让我抓狂的是所有的附加器除了任务日志的数据库附加器工作得很好。除了我使用 ThreadContext 属性将特定于任务的数据放入日志之外,任务 DB 附加程序没有什么特别之处。就像我说的,所有这些数据都很好地出现在文本文件和内存缓冲区中。

我在输出窗口中查找了与数据库附加程序相关的错误,但没有任何错误。我在配置 XML 文件中比较了两个数据库附加程序,它们是相同的...我什至从组合中删除了我的自定义属性,以及任务数据库附加程序still不起作用!

我的任务记录器配置如下:

<logger name="TaskLogger">
  <level value="DEBUG" />
  <appender-ref ref="TaskLogFile" />
  <appender-ref ref="TaskLogDB" />
  <appender-ref ref="TaskLogMemory" />
</logger>

我的数据库附加程序配置如下:

  <appender name="TaskLogDB" type="log4net.Appender.AdoNetAppender">
    <bufferSize value="100" />
    <connectionType value="System.Data.SQLite.SQLiteConnection, System.Data.SQLite, Version=1.0.66.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139" />
    <connectionString value="Data Source=task_log.s3db;Version=3;" />
    <commandText value="INSERT INTO TaskLog (Date, Level, Thread, Logger, Message, Exception) VALUES (@Date, @Level, @Thread, @Logger, @Message, @Exception)" />
    <parameter>
      <parameterName value="@Date" />
      <dbType value="DateTime" />
      <layout type="log4net.Layout.RawTimeStampLayout" />
    </parameter>
    <parameter>
      <parameterName value="@Level" />
      <dbType value="String" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%level" />
      </layout>
    </parameter>
    <parameter>
      <parameterName value="@Logger" />
      <dbType value="String" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%logger" />
      </layout>
    </parameter>
    <parameter>
      <parameterName value="@Thread" />
      <dbType value="String" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%thread" />
      </layout>
    </parameter>
    <parameter>
      <parameterName value="@Message" />
      <dbType value="String" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%message" />
      </layout>
    </parameter>
    <parameter>
      <parameterName value="@Exception" />
      <dbType value="String" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%exception" />
      </layout>
    </parameter>
  </appender>

我的主日志数据库追加器的配置方式相同,但是it作品。谁能推荐进一步的调试策略?


您可以启用 log4net 内部调试并将调试消息捕获到跟踪侦听器或系统调试器。我在下面给出了类似的建议post.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

调试 ADO log4net 附加程序(不会附加) 的相关文章

  • C# - 如何检测 SQLite DB 是否被锁定?

    我正在开发一个使用 SQLite 的多线程 C 程序 我遇到一个问题 有时运行 SQLiteCommand ExecuteNonQuery 来更新某些行会抱怨 SQLite 错误 5 数据库已锁定 我知道发生这种情况是因为数据库在插入或更新
  • 在 iOS 应用程序中处理数据(选择什么?NSData、CoreData、sqlite、PList、NSUserDefaults)

    当我开发 iPhone 应用程序 时间跟踪器 待办事项列表等 时 我永远不知道处理数据的最佳方式是什么 有一次我使用了 plist 下次使用 sqlite 或 CoreData 您如何决定什么最适合您的项目 只谈数据管理 例如 如果您想开发
  • AutoCompleteTextView sqlite填充异常

    我的第一篇文章只有不到一半的文字 因此是第二篇 完整的 文章 我正在开发一个测试应用程序 使用 sqlite 填充两个 AutoCompleteTextView 我正在使用汽车制造商和模型进行测试 自动完成的 使自动完成 模型自动完成 ma
  • 在 Windows Phone 8 中使用 SQLite 时无法使用商店测试套件

    我在 Windows Phone 8 项目中使用 SQLite WP80 version 3 7 16 现在 当我尝试使用商店测试套件进行测试时 它说 应用程序包 XAP 不是最新的 重新编译并重试 将解决方案配置更改为发布并将平台更改为任
  • 从 SQLite 迁移到 Android Room 持久性库

    我有一个正在使用的应用程序SQLite数据库 我正在尝试替换AndroidSQLite with Android Room API 我已经创建了 DAO 类 实体类和 DB 但是在执行数据库查询时Async任务我收到以下错误 引起原因 ja
  • PHP - SQLite 与 SQLite3

    我已经使用 SQLite 2 8 17 制作了一个 Web 应用程序 我现在才发现有一个 SQLite3 在制作 Web 应用程序时 它以某种方式逃避了我的注意 可能是由于缺少 php 函数的文档 我想知道 使用 SQLite3 比 SQL
  • 删除最初使用“未知分词器”创建的表?

    我有一个 sqlite3 数据库 错误消息显示 无法删除此数据库中的单个表unknown tokenizer mm 我直接用命令试了一下DROP TABLE tablename 里面最新的SQLiteSpy http www yunqa d
  • 当添加列较少时追加到现有 SQLite 表,而不将数据库读入 R

    是否有一些简单的方法 无论是在 SQL 端还是在 R 端 将 data frame 附加到具有更多列的现有表 缺失的列应该用 NA 填充 如果它能够优雅地处理比表 1 列数更多的表 2 那么会加分吗 library RSQLite Crea
  • 如何准备sql语句并绑定参数?

    不幸的是 文档 http www sqlite org完全缺乏示例 这真的很奇怪 就好像它假设所有读者都是优秀的程序员一样 然而 我对C 并且无法真正从文档中弄清楚如何真正准备和执行语句 我喜欢它的实施方式PDO for PHP 通常 我只
  • 我应该如何配置 log4net 以写入 Windows XP 和 7 上的 %LOCALAPPDATA%?

    我有一个内部应用程序 它使用 log4net 进行日志记录 我希望在以下位置生成日志 LOCALAPPDATA Vendor App application log 不幸的是 log4net 正在创建日志文件 APPDATA 反而 这不是一
  • 是否可以使用环境变量来为基于 log4net 的日志系统指定所需的日志级别?

    我们使用 log4net 进行日志记录 我想知道在指定日志级别时是否可以使用环境变量 动机很简单 我们的 QA 人员不必编辑配置文件 他们只需设置一次特定的环境变量 简而言之 我们不想将配置文件中的日志级别设置为某个恒定值 因为相同的构建由
  • Python SQLite SELECT LIKE IN [列表]

    如何在Python中编写SQL查询来选择Python列表中的元素 例如 我有 Python 字符串列表 Names name 1 name 2 name n 和 SQLite table 我的任务是找到最短路线 SELECT element
  • 销毁/删除 Rails 中的数据库

    是否可以从现有应用程序中完全删除数据库和所有迁移记录等 以便我可以从头开始重新设计数据库 通过发行rake T您有以下数据库任务 rake db create Create the database from DATABASE URL or
  • Heroku 上重启后 Better-SQLite3 数据库重置

    我有一个 Discord 机器人better sqlite3 https github com JoshuaWise better sqlite3硬币和 XP 数据库 直到两周前它一直工作得很好 现在 每次重新启动后 它只会恢复 XP 和硬
  • python 没有名为serial的模块

    我的 python 程序有问题 我编写了程序来将数据 温度 从 arduino 获取到我的树莓派 sqlite 数据库 但它在第 4 行 导入串行 处给了我一个错误 提示 ImportError 没有名为串行的模块 我使用 python3
  • 锁定 SQLite 数据库以从 C# 读取

    我的项目有一个 C dll 其中在 Sqllite 中创建一个数据库 共享拒绝 无 这个 dll 会将数据插入到数据库中 我有一个 C exe 它必须访问数据库并显示它 显示需要异步完成 在启动与 sqlitedb 的连接时 有什么方法可以
  • 如何在 SQLite 中替换字符串?

    如何更新具有以下内容的表列 var mobile 233KKFSDK3234 Documents Page jpg 并将其替换为 Documents Page jpg 在 SQLite 中 注意 所有文字 除了 Documents 是动态的
  • SQLite FTS4 使用特殊字符进行搜索

    我有一个 Android 应用程序 它使用 FTS4 虚拟表在 SQLite 数据库中搜索数据 它工作正常 但是当表中的数据包含特殊字符 如 或 时 SQLite MATCH 函数不会给出任何结果 我现在迷路了 谢谢 注意 默认的分词器真的
  • 如何确保与 sqlite 和 NFS 的文件安全同步

    我最近将应用程序的工作区文件格式转换为 sqlite 为了确保 NFS 上的稳健操作 我使用了通用更新策略 对本地硬盘上临时位置中存储的副本进行了所有修改 仅在保存时 我才会通过使用临时文件复制原始文件来修改原始文件 可能在 NFS 上 我
  • 与 SQL 中的 IN 运算符相反

    我怎么能做相反的事情 换句话说 选择所有姓氏不是 Hansen 或 Pettersen 的人 WHERE lastname NOT IN Hansen Pettersen 请参阅 IN 和 NOT IN 运算符 部分SQLite 所理解的

随机推荐

  • Clearcase 7.1.2,VOB 分割

    我们当前设置了 VOB 源代码和文档驻留在同一个 VOB 中 为了减少 VOB 下载时间 我们现在希望将文档移动到新的 VOB 以便只有代码部分保留在旧的 VOB 中 由于有很多文件夹和文件 因此不可能手动重新定位每个文件 文件夹 为此 我
  • 使用框在同一文件上绘制不同的列

    我有一个看起来像这样的文件 cat myfile dat 1 8 32 19230 1 186 3 985 1 8 64 9620 0 600 7 877 1 8 128 4810 0 312 15 136 1 8 256 2410 0 2
  • 同步和可见范围

    我一直在阅读 Java 并发性 但忘记了这样一个事实 使用同一锁的两个线程中的同步块也会影响变量的可见性 即使它们没有定义为 易失性 如果我有这样的代码 Object lock new Object boolean a false b fa
  • PHP MD5 与 C# MD5 不匹配

    我在 C 中有一个哈希方法 如下所示 MD5CryptoServiceProvider md5 new MD5CryptoServiceProvider byte raw input Encoding UTF32 GetBytes hell
  • r 在数据表上的行式迭代

    library quantmod library PerformanceAnalytics getSymbols YHOO src google stock dat data table PerformanceAnalytics Calcu
  • 在 Excel 中复制和重命名未打开的工作簿

    我正在尝试复制位于一个文件路径的整个未打开的工作簿 将其重命名并将其保存到新目录 我在重命名和保存时遇到问题 这是迄今为止我的代码 Private Sub new file Click Dim ActBook As Workbook New
  • 用于初始化列表列表的简洁语法

    C 中是否有用于初始化列表列表的简洁语法 I tried new List
  • 使用 setAttribute 方法() 的 Aurelia 自定义属性

    当我在 javascript 中创建和附加元素并设置自定义属性时 Aurelia 似乎并不知道 除非我做错了什么 例如 const e document createElement div e setAttribute custom att
  • 如何将 iScroll4 与 SwipeView 结合使用?

    我正在使用 iScroll4 在移动网站内的图像上创建水平滚动效果 iScroll 工作得非常好 但问题是 iScroll 包装器中包含的图像禁用了本机垂直滚动 换句话说 用户通过手指滑动来导航页面的操作在 iScroll 包裹图像内的任何
  • 在php中获取图像src

    如何使用 php 函数从 img 标签获取图像源 或者 您可以使用内置 DOM 函数 如果您使用 PHP 5 doc new DOMDocument doc gt loadHTMLFile url xpath new DOMXpath do
  • 录制成WAV文件

    自从我发帖以来这个问题 我一直在尝试自己从原始 PCM 数据编写一个有效的 WAV 文件 我已经成功编写了 FLAC 转换器 经过测试并且可以工作 但它不会对我一直在编写的 WAV 文件进行编码 我不确定我做错了什么 我一直在网上搜索其他个
  • 确定 .NET Core 中的操作系统

    如何确定我的 NET Core 应用程序正在哪个操作系统上运行 过去我可以使用Environment OSVersion 当前确定我的应用程序是在 Mac 还是 Windows 上运行的方法是什么 Method System Runtime
  • List 作为使用 Spring 3 MVC 的表单支持对象,语法正确吗?

    我想做这样的事情 在哪里Foo是一个具有一个 String 字段名称和 getter setter 的类
  • 音频队列启动失败

    我正在开发一个项目 它既有音频流又有文件播放音频 对于音频流 我使用 AudioStreamer 对于从文件播放 我使用 avaudioplayer 只要应用程序不被电话或短信打断 流媒体和播放都可以完美运行 但是 当我尝试重新启动流媒体时
  • 如何删除 XCode 4.2 并安装 4.1 以在 OSX Lion 上开发 Ruby / Rails?

    我使用 RVM ruby 版本管理器 开发 Rails 应用程序 我必须下载 XCode 在应用商店中我只得到了 4 2 版本 现在 RVM 说它无法使用此 XCode 正确构建 rubies 所以我遵循了本教程 http www fred
  • Reactjs - 当谷歌仅显示空白页面时获取

    I ve just coded my first website using reactjs but when I check how google sees my website I receive the following resul
  • PHP 将两个独立的冲突日期范围组合成唯一的对

    设置一 2014 04 05 至 2014 06 27 2014 06 28 至 2014 10 19 Set two 2014 04 05 至 2014 05 02 2014 05 03 至 2014 05 31 2014 06 01 至
  • VBA Access 获取 RowSource 来查找查找值

    VBA菜鸟在这里 截至此哀悼 在 MS Access 中 我编写了一个测试函数 根据您传入的某些条件查找记录的值 该函数似乎工作正常 除非我正在搜索的列中有查找 基本上它可能返回 19 并且 19 对应于其他一些表值 看来该列的 RowSo
  • C# 将一个图片框拖放到另一个图片框

    我正在尝试将一个图片框拖放到另一个图片框中 请帮我 谢谢 此致 看到这个http www codeguru com Csharp Csharp cs syntax controls article php c5865 更新 做一招 bool
  • 调试 ADO log4net 附加程序(不会附加)

    我以前曾这样做过 但现在不起作用 在过去的两个小时里我一直在抓狂地试图弄清楚它 我有几个附加程序 其中一些用于 主 日志 另一个用于另一个 任务 日志 主日志有 4 个附加程序 控制台 内存 文件和 DB sqlite3 任务日志有 3 个