问题标签 [exception-logging]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-web-api - 使用 ExceptionLogger 在 WebApi 2.1 上的 log4net
如何正确实现 WebApi 2.1 的 ExceptionLogger,以便 log4net 记录方法、位置和行的正确值?
我想要实现的是一个全局异常记录器,用于在运行 .NET 4.5.1 的 WebAPI 2.1 v5.1.2 应用程序中记录所有未处理的异常。我已经阅读了很多文章,包括下面链接的一篇解释如何实现 ExceptionLogger 的文章,它工作得很好,除了我无法让 log4net 输出我真正想要记录的值。
例如,如果我从控制器记录异常,则一切都是正确的。当我从 ExceptionLogger 记录时,我从 Logger 本身获取值,而不是从引发异常的方法。我尝试了下面代码中列出的一些东西,但它们并不完全正确。这就是我得到的。
我知道文本很小,但表格显示了 log4net 写入的不同值。第一个日志来自控制器,一切都很好。第二个条目来自代码片段中的 log.Logger.Log。最后一个条目来自代码段中的 log.Error。
片段中的最后一个方法尝试使用我从 log4net 包装器的其他实现中读取的限制类型,但它只是抛出错误,如片段中所述。
那么,当使用 GLOBAL ExceptionLogger 时,我如何获得与从控制器调用时收到的值一样的值?
c# - 创建后异常记录和写入现有文件
我正在尝试发布服务并且遇到问题(在网络端),因此我正在尝试编写一些异常日志记录来帮助他们。
我在大约 4 个不同的地方设置了这个,因为我觉得这就是错误所在......
我的大问题是我是否需要在创建文件后编写一些东西来修改文件,因为目前只有我放置此代码的第一个位置实际上放入了 WriteLine 内容。
logging - 如何在 Apigility ZF2 应用程序中捕获和记录所有异常?
我想在 Apigility Zend Framework 2 应用程序中构建错误处理和日志记录机制,并捕获并记录所有异常。
经过一番研究,我找到了一个 Stack Overflow 的答案和一个解决方案,这似乎完全符合这个要求。这是答案中的代码(有一些小的命名和格式修改):
Module.php
所以现在我已经throw new \Exception('foo')
在代码中的几个地方(在 a Resource
、 aService
和一个Mapper
类中)尝试了这个(用一个简单的 ),并期望将异常缓存并登录到我定义的文件中。但它不起作用。
难道我做错了什么?什么?如何让它工作?如何在 Apigility 驱动的 Zend Framework 2 应用程序中捕获和记录所有异常?
附加信息:代码中引发异常的位置示例:
附加信息:响应中的跟踪(如果throw new \Exception('fetch_EXCEPTION');
在 中设置BarResource#fetch(...)
):
vb.net - 如何在 vb.net 类库项目中记录未处理的异常?
我正在为 Solidworks EPDM 创建一个插件(来自 API 帮助的示例)。这是一个添加到 EPDM 的类库 (.dll) 项目,并允许将一些自定义功能添加到程序中。
我想为未处理的错误添加日志记录,以便当我的插件(而不是 Solidworks EPDM 程序本身)引起异常时,我可以收到通知并尝试修复它。
我对这一切都很陌生(所有这些我的意思是 VB.NET 作为一种语言,在 VBA 中编程除宏之外的任何东西,结构化异常处理,错误日志等),我正在尝试遵循MSDN How To:在 Visual Basic 中记录异常,但记录未处理异常的说明似乎不适用于类库项目。
具体来说,我不知道如何通过第 3 步:
记录未处理的异常
1. 在解决方案资源管理器中选择一个项目。在项目菜单上,选择属性。
2. 单击应用程序选项卡。
3. 单击查看应用程序事件按钮打开代码编辑器。
这将打开 ApplicationEvents.vb 文件。
View Application Events
对于类库项目, 该按钮是灰色的。
那么,是否有另一种方法可以为类库项目中的未处理异常添加日志记录?或者,另一种访问ApplicationEvents.vb
类库对象文件的方法?我已经尝试过搜索,但还没有找到允许我记录未处理异常的解决方案。
java - 为一个异常禁用日志记录
我有一个“重复条目”异常,其中记录SqlExceptionHelper
. 我只需要禁用记录此异常。我该怎么做?
elmah - 通过 Live 应用程序上的 Web 界面查看 ELMAH 日志
我已将 elmah.mvc 包含到 Asp.Net MVC 应用程序中,用于记录异常和自定义错误日志。它完全按预期工作,我可以使用 SQL Server 查看我的 ELMAH_Error 表中的日志,也可以通过本地主机 URL ( http://localhost:20086/elmah ) 从 Web 界面查看日志。
我的问题是:如果可能的话,我如何通过实时站点上的 Web 界面而不是“ http://localhost:20086/elmah ”来查看我的日志。我希望能够在必要时从任何计算机上查看日志记录信息。我已经实现了角色和身份验证,所以我应该能够访问正确的 URL,使用适当的凭据登录,然后查看日志......对吗?这可能吗??
.net - 区分异常并确定要记录的内容
是否有任何已知的方法可以根据异常类型记录不同的信息?
这个想法将只记录每种异常类型的相关信息。例如:已知异常/业务逻辑异常不需要记录堆栈跟踪,因为它们是“预期的”
基本上我要问的是在记录异常时是否有任何已知的做法,以使日志尽可能有用而没有任何垃圾。
tomcat - 在独立 Tomcat 服务器中记录 Servlet 异常的位置
我下载了 Tomcat zip 发行版。解压缩并按照建议使用 setenv.bat 脚本对其进行配置。setenv.bat 的内容如下:
我通过复制 webapps 目录下的 war 文件来部署一个 war 应用程序。启动 Tomcat 服务器。战争应用程序按预期执行。但是,当 war 应用程序内部发生异常时,我找不到 tomcat7-stderr.log 和 tomcat7-stdout.log。
(如果安装了 Tomcat Windows Service 发行版并在其上部署了相同的 war,则 tomcat7-stderr.log 和 tomcat7-stdout.log 出现在 tomcat/logs 目录中。)
我不知道为什么没有如上所述在独立的 Tomcat 服务器中创建 tomcat7-stderr.log 和 tomcat7-stdout.log。
任何人都可以帮忙吗?
c# - 如何记录 ODataExceptions?异常记录器不工作
我正在尝试在基于 WebApi 2.2 的 OData v4 服务中记录异常。我正在使用 NLog 进行日志记录。为此,我创建了一个简单的 ExceptionLogger (NLogExceptionLogger) 类。NLogExceptionLogger 确实可以很好地记录未处理的异常,但它不会记录所有异常。如果我手动抛出异常作为测试,它就可以正常工作。(参见控制器示例)
我正在寻找的具体是在验证 ODataQuery 时引发的 Microsoft.OData.ODataExceptions。错误信息在响应中返回,但不被 NLogExceptionLogger 记录。基本上对于尝试 $expand 或 $select 尚未启用的字段的查询,我想在日志中查看这些异常。
我的假设是 ExceptionLogger 只看到未处理的异常,这没有我希望的那么有用。有没有办法可以记录这些异常?
NLogExceptionLogger:
WebApiConfig.cs 片段:
控制器示例:
logging - NLog 内部异常记录
我正在尝试使用 NLog 记录内部异常消息。这是我的NLog.config文件的一部分:
See the inner exception for details
对于NLog.config文件的行Exception Message
和InnerException Message
行,我都收到相同的消息。