问题标签 [fileappender]

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.

0 投票
1 回答
7652 浏览

java - Log4j 和 Logback FileAppender maxFileSize 和 maxBackupIndex

我需要控制日志框架的最大磁盘空间量。
例如,在 log4j 中,如果我有这样的 appender,我可以轻松估计需要多少磁盘空间:

使用 maxFileSize 和 maxBackupIndex 我知道我最多需要 10x100KB。
我注意到 DailyRollingFileAppender 但它不支持 maxFileSize。

除了 RollingFileAppender 之外,还有其他 FileAppender 可以实现这种控制吗?logback 或 log4j2 是否提供其他 FileAppenders/alternatives?

注意:我正在寻找仅配置日志框架的方法,没有像 crontab 这样的外部进程和 rm 命令。像这样的第 3 方 FileAppenders ,这个这个是受欢迎的。

0 投票
1 回答
1116 浏览

log4j - 如何根据大小(仅)限制 log4j 文件?

我想将 log4j 配置为只写入最大指定大小的文件,例如 5MB。当日志文件达到 5MB 时,我希望它开始写入新文件。我想在日志文件名中加入某种有意义的时间戳,以区分一个文件和下一个文件。

在编写新文件时,我不需要它以任何方式重命名或操作旧文件(压缩将是一个福音,但不是必须的)。

绝对不希望它在一段时间或滚动文件数量后开始删除旧文件。

N MB 日志文件的时间戳块似乎是我能想象的绝对基本的最小简单策略。它是如此基本,以至于我几乎拒绝相信它不是开箱即用的,但我一直无法弄清楚如何做到这一点!

特别是,我尝试了所有的化身DailyRollingFileAppenderRollingFileAppender或'Extras' RollingFileAppender。当超过备份计数时,所有这些都会删除旧文件。我不想要这个,我想要我所有的日志文件!

TimeBasedRollingPolicyfrom Extras 不适合,因为它没有最大文件大小选项,并且您无法关联辅助文件SizeBasedTriggeringPolicy(因为它已经实现TriggeringPolicy)。

是否有开箱即用的解决方案 - 最好是在 Maven 中心?

0 投票
4 回答
185248 浏览

xml - 使用控制台和文件附加程序的非常简单的 log4j2 XML 配置文件

我想要一个非常简单的 XML 配置文件,它带有一个控制台和一个使用 log4j2 的文件附加程序。

(Apache 网站提供了很多信息。)

0 投票
2 回答
904 浏览

java - Log4j file appender for each instance of a class

I have a scenario class, which has list of Test cases. Is there any way that I can save each Test case execution to separate file with name: TestCaseName.log?

I have done this before with java.util.logging by adding file handler in the code, but have no idea how to do this with Log4j.

0 投票
2 回答
856 浏览

java - logback 加载所有 appender

我有一个 logback.xml 文件,其中包含 3 个附加程序:1 个 ConsoleAppender 和 2 个 FileAppender

问题是当我启动与 aLogger 关联的程序时(Logger LOGGER = LoggerFactory.getLogger("aLogger");。它还添加了 bAppend (因此创建了一个空的 b.txt 文件 ....)

这就像 logback 调用并在调用记录器时执行所有附加程序,而不管附加的附加程序。如何避免这种行为?

非常感谢

0 投票
1 回答
1619 浏览

log4net - “手动”滚动 log4net RollingFileAppender 日志文件?

我不想在日期/时间或指定的最大大小之后滚动日志,而是希望能够调用像“ResetLog”这样的方法,将我的“log.txt”复制到“log.txt.1”,然后清除 log.txt .

我试图通过使用 FileAppender 而不是 RollingFileAppender 来实现这一点:

该文件已关闭并且 CreateNextLogFile() 重命名它。然后我创建一个新的日志文件并将 FileAppender 设置为使用它。但是,我认为 ActivateOptions 会继续使用所需的设置重新配置 FileAppender。我查看了 log4net 文档,没有看到任何其他公共方法允许我在关闭 FileAppender 后重新打开它。谁能推荐一种实现翻转的方法?如果 RollingFileAppender 有这样的东西会很好,但我也没有看到任何有用的文档。

0 投票
0 回答
2750 浏览

java - log4j FileAppender 不在 Linux 中写入

在一个独立的应用程序中,我使用 log4j 进行日志记录,并使用以下属性文件对其进行了配置:

在 Windows 中,这按预期工作,在当前工作目录中生成一个 log4j.log 文件。当我在 Linux 中运行应用程序时,它不报告错误但不生成日志文件。记录器输出到控制台就好了。

我尝试以编程方式将 File 属性从相对路径更改为绝对路径,但没有任何改变。

我还验证了如果我提供了一个无效的文件名,该工具会报告一个错误,指出无法生成该文件。所以我很困惑为什么没有报告错误并且没有生成文件。

我已经在我的硬盘上搜索了该文件,以验证它不是在其他地方生成的,它不是。

在这里的任何帮助将不胜感激。

0 投票
1 回答
559 浏览

c# - Log4net - 每天重置日志文件

我想使用 Log4Net 创建一个日志文件。它应该记录到午夜的日常活动,并在第二天重置。使用什么附加程序以及如何使用?

编辑:我忘了提,它不应该每天创建一个不同的文件,而应该只创建一个文件。

0 投票
1 回答
456 浏览

java - 使用记录器配置类以使用 log4j 记录到文件

嗨,我有 4 个类,每个类共享一个记录器类的匿名实例(不是我的创造)。我添加了一个 log4j appender 并将记录器设置为记录到 appender 文件。问题是一切都记录到文件中,包括 Hibernate。如何设置仅记录到此文件的类?

这是我目前的配置文件:

我的一门课叫做 SeriousEvent。如果我希望这个类记录到文件 com.daniels.logging.RollingFileAppender 我将如何设置它?我是新手,所以请原谅我。我浏览了文档,但我发现很难找到一个好的例子。

谢谢,丹尼尔

0 投票
1 回答
2228 浏览

java - 在 log4j 中将 ConsoleAppender 替换为 FileAppender

我已经使用 ConsoleAppender 在 log4j 记录器上创建了一个记录器。代码如下,

我没有使用 log4j.properties 文件,因为我不确定将它放在哪里。上面的代码工作正常并在控制台上正确记录。现在我想将其更改为与 FileAppender 一起使用。

我只是按如下方式更新了静态构造函数,

并添加faca. 但是现在我收到了这个错误,

log4j:ERROR 没有为名为 [null] 的附加程序设置输出流或文件。

我不确定要从 File Appender 定义哪个属性。