标签: exception-logging

ELMAH - 没有HttpContext的异常记录

我用Elmah.XmlFileErrorLog 尝试了这个解决方案但是我遇到了异常

System.ArgumentNullException was unhandled by user code
  Message="Value cannot be null.\r\nParameter name: context"
  Source="Elmah"
  ParamName="context"
  StackTrace:
       at Elmah.ErrorSignal.FromContext(HttpContext context) in c:\builds\ELMAH\src\Elmah\ErrorSignal.cs:line 67
       at Elmah.ErrorSignal.FromCurrentContext() in c:\builds\ELMAH\src\Elmah\ErrorSignal.cs:line 61
       at ElmahHttpErrorHandler.ProvideFault(Exception error, MessageVersion version, Message& fault) in c:\Myapplication\App_Code\Util\ElmahHttpErrorHandler.cs:line 19
       at System.ServiceModel.Dispatcher.ErrorBehavior.ProvideFault(Exception e, FaultConverter faultConverter, ErrorHandlerFaultInfo& faultInfo)
       at System.ServiceModel.Dispatcher.ErrorBehavior.ProvideMessageFaultCore(MessageRpc& rpc)
       at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessageCleanup(MessageRpc& rpc)
  InnerException: 
Run Code Online (Sandbox Code Playgroud)

Web.Config文件

<configSections>
    <section name="loggingConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    <section name="exceptionHandling" type="Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Configuration.ExceptionHandlingSettings, Microsoft.Practices.EnterpriseLibrary.ExceptionHandling, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, …
Run Code Online (Sandbox Code Playgroud)

c# wcf elmah exception-logging

50
推荐指数
2
解决办法
2万
查看次数

NLog LogException似乎忽略了异常

LogException或任何派生函数ErrorException等似乎完全忽略传入的异常参数.

我在nlog.config文件中缺少格式属性吗?我正在使用Nlog在VS中安装的模板中的样板.

我希望将异常对象和内部异常的信息添加到日志文件中.然而,添加到日志文件的唯一信息是传递给函数的字符串参数.

事实证明,这ErrorException()实际上没那么有用了Error()

我怎样才能获得更深入的报道.特别是Message所有内部属性的完全递归转储Exceptions

logging nlog exception-logging

33
推荐指数
2
解决办法
9426
查看次数

Elmah:如何从错误报告中获取JSON HTTP请求正文

我正在使用Elmah记录异常.如果请求是基于表单的请求(即Content-Type:application/x-www-form-urlencoded),Elmah非常擅长记录请求主体,但是基于JSON的请求,其中内容类型是application/json,请求正文在错误报告中找不到任何地方.任何人都知道我在哪里可以找到这个请求体,以便我可以正确诊断我的异常?

更新:2012-01-03

作为对基于JSON的请求的含义的澄清,这里是一个带有JSON作为请求主体的示例原始HTTP请求:

PUT http://mycompany.com/api/v1.0/me HTTP/1.1
Host: mycompany.com
Content-Length: 20
Content-Type: application/json

{"city":"Vancouver"}
Run Code Online (Sandbox Code Playgroud)

.net c# error-logging elmah exception-logging

15
推荐指数
1
解决办法
4790
查看次数

.NET的一般异常处理策略

我习惯在每种方法中使用try/catch块.这样做的原因是我可以在违规点捕获每个异常并记录它.从我的阅读和与他人的对话中我理解,这不是一种流行的观点.人们应该只抓住人们准备处理的事情.但是,如果我没有抓到违规点,那么就有可能永远不会记录这种违规行为并了解它.注意:当我抓住并且不处理时,我仍然会抛出.这允许我让异常传播到将处理它的东西,但仍然让我在违规点记录它.

那么......如何在每个方法中避免try/catch,但仍然在错误发生时记录错误?

.net c# exception-handling exception-logging

12
推荐指数
3
解决办法
7048
查看次数

如何在JAVA中查看完整的异常日志?

当我使用命令java ExceptionTest运行一些java程序时,有时会省略异常并且看起来像

Exception in thread "main" java.lang.NoClassDefFoundError: aa/bb/DD
        at SOMEWHERE(unknown source)
Caused by: java.lang.ClassNotFoundException: aaa.bbb.CC
        at SOMEWHER(unknown source)
        ... 13 more
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我想看到另外13个例外.是否有选项可以查看所有异常日志?

java exception-logging

8
推荐指数
2
解决办法
1万
查看次数

Asp.net 4.0:如何在自定义错误页面中获取异常详细信息?

我们正在使用asp.net配置设置提供的自定义错误.在整个应用程序(PL/BLL/DAL)中,我们没有使用任何try catch.因此,对于任何图层应用程序中的任何异常,都会将用户重定向到配置文件中的自定义错误设置中的自定义错 现在我们要在显示错误页面之前在日志文件中记录以下信息:

- Date & time
- Exception message & strack trace.
- Page Name
- Method Name
- Method Parameter & values.
Run Code Online (Sandbox Code Playgroud)

请帮我如何在自定义错误page_load事件中收集上述信息?

谢谢,

@保罗

custom-error-pages exception-logging asp.net-4.0

7
推荐指数
1
解决办法
8445
查看次数

如何在ABP中获取更详细的异常?

我创建了一个CrudAppService。当调用使用它的动态API 招摇,我得到一个通用的500这种描述错误:

{
  "result": null,
  "targetUrl": null,
  "success": false,
  "error": {
    "code": 0,
    "message": "An internal error occurred during your request!",
    "details": null,
    "validationErrors": null
  },
  "unAuthorizedRequest": false,
  "__abp": true
}
Run Code Online (Sandbox Code Playgroud)

如何获取更详细的异常进行调试?我有什么要启用的吗?

exception-logging asp.net-core aspnetboilerplate

7
推荐指数
2
解决办法
2429
查看次数

PHP中记录自定义异常的最佳实践

我有一个自定义异常(在可能的其他自定义异常中进一步扩展)。我的项目需要记录发生的所有 customExceptions(及其所有后代)。我有一个可以记录 customException(和其他任何东西)的记录器。这样做的一种方法是在如下处理异常时显式记录异常。

try{
    //some exception occur
}
catch(customeException $e)
{
     $log->logException($e);
     $e->showMessage(); // or do anything that we have to do with the error.
}
Run Code Online (Sandbox Code Playgroud)

由于我们正在记录所有 customExceptions,我能想到的另一种方式是更新 customException 构造函数并在构造函数内部记录异常。通过这种方式,它确保记录所有 customException。但是,如果我们走这条路,我的问题是:

  1. 如何将记录器注入 customException?
  2. 会不会违反 SRP 原则?
  3. 从 OOP 的角度来看,它会被认为是不好的做法还是对此的最佳做法是什么?

php logging exception-handling custom-exceptions exception-logging

6
推荐指数
1
解决办法
1144
查看次数

java.util.logging 和锁定文件的问题

我有一个扫描一组文件的应用程序。这种扫描是并行进行的。我的意思是,如果我上传 5 个文件,将创建五个进程并开始并行执行作业。现在,为了记录正在运行的作业的异常,只有一个日志文件。接下来的问题是,记录器创建了很多日志文件 -

mylogfile.log(actual log file)

mylogfile.log.1

mylogfile.log.2

mylogfile.log.3

mylogfile.log.4

mylogfile.log.5
...
Run Code Online (Sandbox Code Playgroud)

及其各自的锁定文件。下面是我使用的代码片段:

  public static Logger getLogger(final String className) {
    final Logger logger = Logger.getLogger(className);
    FileHandler fh;
    try {
        // This block configure the logger with handler and formatter
        fh = new FileHandler("mylogfile.log", true);
        logger.addHandler(fh);
        logger.setLevel(Level.ALL);
        logger.setUseParentHandlers(false);
        fh.setFormatter(new SimpleFormatter());
    } catch (final SecurityException e) {
        //          }
    } catch (final IOException e) {
        //
    }
    return logger;
}
Run Code Online (Sandbox Code Playgroud)

我如何确保只使用一个日志文件来写入所有并行运行的作业的异常..?

谢谢,

安尼什

java logging exception-logging

5
推荐指数
1
解决办法
1万
查看次数

对一个异常禁用日志记录

我有一个“重复条目”异常,其中记录了SqlExceptionHelper. 我只需要禁用记录这个异常。我该怎么做?

java logging exception exception-logging

5
推荐指数
1
解决办法
5394
查看次数

NLog内部异常登录

我正在尝试使用NLog记录内部异常消息.这是我的NLog.config文件的一部分:

    <target name="errors" xsi:type="File" layout="${longdate}${newline}
        - Exception Message: ${exception:format=Message}${newline}
        - InnerException Message: ${exception:innerExceptionSeparator=TEXT}${newline}"
        fileName="\Logs\errors-${shortdate}.log"
       concurrentWrites="true" />
    </targets>
Run Code Online (Sandbox Code Playgroud)

我正在为NLog.config文件和See the inner exception for details两行获取相同的消息.Exception MessageInnerException Message

logging nlog exception-logging

5
推荐指数
2
解决办法
4295
查看次数

你如何集中ELMAH日志

在我的作品中,我们制作的网站就像它们已经过时了(即每年有很多网站)

我想在所有这些公司实践中安装ELMAH,然后集中记录所有内容以供我们的开发人员查看.这个过程必须非常简单,否则它的使用不会起飞.

我正在考虑建立一个中央Google阅读器帐户,并将ELMAH安装的所有RSS源连接到其中.

我担心的是谷歌表示他们只检查一小时一次,这意味着如果你使用ELMAH的"内存"存储,那么当应用程序池重新启动时,错误可能会被遗漏.

电子邮件是相当不错的,但如果每个人都开始收到ELMAH错误消息,他们将开始忽略它们 - 也许我可以设置一个额外的交换邮箱,为此保持分离?

你的想法将不胜感激

(ps这可能被认为是主观的 - 但我相信有人可能在一些主观答案中有答案,使其成为一个有效的问题)

elmah exception-logging

4
推荐指数
1
解决办法
1358
查看次数

使用 SLF4J 记录异常时,Sonarcloud 会警告“没有足够的参数”

我用 Java 管理一个开源项目,在我的代码中有大约 20 个地方我使用以下模式记录异常(slf4j 版本 1.7.30)

private static final Logger logger = LoggerFactory.getLogger();

... 

try {
  interfaces = NetworkInterface.getNetworkInterfaces(); 
} catch (SocketException ex) {
  logger.error("Socket exception when retrieving interfaces: {}", ex);
}
Run Code Online (Sandbox Code Playgroud)

或类似

try {
  // stuff
} catch (IOException ioe) {
  logger.error("Server error: {}", ioe);
}
Run Code Online (Sandbox Code Playgroud)

从今天开始,SonarCloud自动代码质量审查已开始使用规则标记这些java:S2275(Printf 样式的格式字符串不应导致运行时出现意外行为),并带有特定消息“参数不足”。

编辑:值得注意的是,当 anException是最后一个参数时,这似乎总是发生。下面的模式确实没有标志:

try {
  // Server connection code
} catch (IOException e) {
  logger.error("Server Connection error: {}", e.getMessage());
}
Run Code Online (Sandbox Code Playgroud)

另一个 StackOverflow …

java slf4j exception-logging sonarcloud

2
推荐指数
1
解决办法
3228
查看次数