草庐IT

exception-logging

全部标签

php - 指定到 'php_value error_log' 的相对路径

与其将error_log的绝对路径放在我的.htaccess中,不如找到一种相对于.htaccess文件(或类似文件)指定它的方法:php_valueerror_log%{DOCUMENT_ROOT}/libs/log/error/PHP_errors.log这将是我想要做的事情,但这似乎行不通。如果我指定绝对,它确实有效。 最佳答案 您可以将其设置为./path/error.log。 关于php-指定到'php_valueerror_log'的相对路径,我们在StackOverflow

PHP:\Exception 或命名空间内的异常

我正在尝试处理我的api中的一些错误。但是我尝试了很多方法来执行完成所需的操作?在代码中,我使用了Exception,\Exception,另一个扩展到Exception的类,“use\Exception”。这些选项都不起作用。我需要做什么来执行block捕获?//PieceofsourceinthebeginoffilenamespaceBusiness\Notifiers\Webhook;use\Exception;classMyExceptionextends\Exception{}//Pieceofsourcefrommyclasstry{$products=$payment-

php - Zend 框架 : How to handle exceptions in Ajax requests?

通常当抛出异常时,错误Controller接受命令并显示带有常规通用页眉和页脚的错误页面。Ajax请求中不需要这种行为。因为如果出现错误,整个html页面都会被发送过来。在我直接在div中加载http响应内容的情况下,这更不受欢迎。在Ajax请求的情况下,我只想接收异常抛出的“实际错误”。我该怎么做?我认为,一种肮脏的方法可能是:在ajax请求中设置一个var并进行相应的处理。不是一个好的解决方案。 最佳答案 如果您使用contextSwitch或ajaxContext操作助手来编码您的错误(可能关闭autoJsonSerializ

java - log4j:归档文件删除策略

我正在使用TimeBasedRollingPolicy和RollingFileAppender使我的日志滚动并存档为myLogFileName..log.gz:我不明白的是-它在哪里定义了何时以及如何从文件系统中完全删除真正的旧归档文件?而且,如果我只想保留不超过一个月的旧文件-我可以在哪里设置它(使用log4j(附加功能))? 最佳答案 TimeBasedRollingPolicy由apache-log4j-extras定义.这种依赖关系需要在类路径上才能使用该策略。RollingFileAppender包含一个maxBackup

java - 如何在 TestNG 报告中包含 Log4j2 消息

我想在所有测试用例的TestNG报告中提供Log4j2日志记录信息。TestNG使用一个名为Reporter.java的特殊记录器类来跟踪日志输出并将其保存在结果XML中。在log4j中,可以简单地创建一个路由到Reporter并注册它的appender实现。使用Log4j2中的新LoggerAPI,很难找到有关如何完成此操作的信息。我有一些信息可以使用Log4j而不是Log4j2来完成这项工作。 最佳答案 据我所知,您只需要实现一个简单的Appender。像这样的东西:@Plugin(name="Reporter",categor

java - log4j1.6中log4j.properties中如何配置monitorInterval

我需要为monitorInterval配置log4j。如何使用log4j.properties完成此操作?在log4j.xml中可以这样配置:log4j.properties中的等价物是什么? 最佳答案 对于log4j2,您可以使用此properties文件。name=MainLoggingmonitorInterval=5appender.console.type=Consoleappender.console.name=STDOUTappender.console.layout.type=PatternLayoutappende

java - 通过 log4j 发送 JNI C stderr/stdout

我的java应用程序使用JNI调用用C编写的库。这个native库将错误记录到stderr,但我想通过我的log4j记录器以某种方式重定向错误流。这可能吗?C库是外部的-我没有源代码,所以无法更改它。谢谢 最佳答案 注意:我没有尝试过这个答案;YMMV.POSIX方法freopen将更改与流关联的基础文件。正如联机帮助页所述:“freopen()函数的主要用途是更改与标准文本流(stderr、stdin或stdout)关联的文件”。因此,您可以创建自己的JNI库,它只需将流重定向到一个文件中。但是,要使这项工作有几个严重的障碍:您需

java - 如何使用 Log4J 和 Apache Chainsaw 远程查看日志事件?

我有一个当前使用Log4J的JavaWeb应用程序用于记录。我想使用ApacheChainsaw远程查看和解析日志。到目前为止,我一直无法理解如何设置客户端(Chainsaw客户端)和服务器端(我的webapp中的log4j配置)以成功启用远程日志记录。这是我到目前为止尝试过的方法。服务器端log4j配置客户端链锯配置我创建了一个具有以下属性的新接收器name=SOCKETport=4445我承认我并不真正理解它是如何工作的。Chainsaw是否正在轮询远程服务器?远程服务器是否连接到Chainsaw并将事件推送给它?欢迎提供指导、指向简单教程的链接或替代工具。

java - 调用 Exception.printStackTrace 时出现 AbstractMethodError

在catch子句中,我想打印异常的跟踪:try{...}catch(Exceptionexc){exc.printStackTrace();...}但在某些情况下,我没有得到堆栈跟踪,而是看到类似这样的内容:Exceptioninthread"pool-1-thread-2"java.lang.AbstractMethodError:java.lang.Exception.printStackTrace()V...通常,如果库在运行时的版本与编译时的版本不同,就会发生此异常,但在这种情况下,我使用的是Java库中的类。printStackTrace是在Throwable中实现的,所以这

java.lang.ClassNotFoundException : org. jboss.logging.Logger 错误

我有一个奇怪的问题。我有一个JMS客户端应用程序和MDB在JBossjboss-5.1.0.GA中配置。早些时候,我通过“配置构建路径”→“添加外部JAR”添加了JAR,一切正常。现在,我将所有JAR移至项目下的lib文件夹,并使用“配置构建路径”→“添加JAR”。现在,我在执行客户端程序时遇到以下异常:(Exceptioninthread"main"java.lang.NoClassDefFoundError:org/jboss/logging/Loggeratorg.jnp.interfaces.NamingContext.(NamingContext.java:160)atorg