标签: rollingfileappender

使用RollingFileAppender的无限数量的备份文件

您是否知道使用RollingFileAppender创建无限数量的备份文件的方法?

当我根本没有指定任何内容maxBackupIndex时,我最终只得到一个备份文件.

java logging log4j rollingfileappender

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

将Log4Net RollingFileAppender设置为每周滚动一次

DatePattern字符串需要的东西的SimpleDateFormatter 会接受.

不幸的是,这意味着,开箱即用,这不包括能够将边界设置为周数.有一些方法可以在C#中获得这个值,但是我们可以扩展SimpleDateFormatter或提供不同的实现IDateFormatter并使用它(甚至在自定义中RollingFileAppender)并不明显.

那么我们怎样才能让Log4Net RollingFileAppender每周滚动一次?

.net c# log4net rollingfileappender

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

如何使用复合命名的roll备份配置静态日志文件名

我使用了这个配置,但总是将日期添加到当前文件('log.20130805.0.log').

<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
    <file value="Logs/logFile.log" />
    <appendToFile value="true" />
    <preserveLogFileNameExtension value="true" />
    <rollingStyle value="Composite" />
    <datePattern value=".yyyyMMdd" />
    <maximumFileSize value="10MB" />
    <countDirection value="1"/>
    <maxSizeRollBackups value="-1" />
    <staticLogFileName value="false" />
    <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%date [%thread] %-5level %logger - %message%newline" />
    </layout>
</appender>
Run Code Online (Sandbox Code Playgroud)

该配置的结果是:

log.20130805.0.log
log.20130805.1.log
log.20130805.2.log
log.20130805.3.log
Run Code Online (Sandbox Code Playgroud)

我得到的staticLogFileName = true是:

log.log
log.1.log
log.2.log
log.3.log
Run Code Online (Sandbox Code Playgroud)

我想要的是:

log.log
log.20130805.1.log
log.20130805.2.log
log.20130805.3.log
Run Code Online (Sandbox Code Playgroud)

log4net config rollingfileappender

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

log4j2:如何强制滚动文件追加程序翻转?

据我所知,log4j2中的RollingFileAppender不会在指定时间(例如-在一个小时结束时)翻转,而是在超过时间阈值后到达的第一个日志事件。

有没有一种方法可以触发事件,一方面会导致文件翻转,另一方面又不会-不会追加到日志中(或者会增加一些琐碎的事情,例如空字符串)?

rollingfileappender log4j2

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

RollingFile Appender Log4j2 不打印行号

我正在使用 log4j2 并具有以下依赖项::

   <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>2.0-rc1</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.0-rc1</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

我正在使用以下配置::

    <?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">

    <Properties>
        <Property name="LOGGER_HOME">/logs</Property>
    </Properties>

    <Appenders>

        <RollingFile name="application" fileName="${LOGGER_HOME}/application.log"
            filePattern="${LOGGER_HOME}/application.%d{yyyy-MM-dd}_%i.log">

            <PatternLayout pattern="%d{ISO8601}{GMT} %-5p %C{2} (%F:%L) - %m%n" />
            <Policies>
                <TimeBasedTriggeringPolicy />
                <SizeBasedTriggeringPolicy size="1 GB" />
            </Policies>

        </RollingFile>

        <RollingFile name="framework" fileName="${LOGGER_HOME}/em-logs/framework.log"
            filePattern="${LOGGER_HOME}/framework.%d{yyyy-MM-dd}_%i.log">

            <PatternLayout pattern="%d{ISO8601}{GMT} %-5p %C{2} (%F:%L) - %m%n" />
            <Policies>
                <TimeBasedTriggeringPolicy />
                <SizeBasedTriggeringPolicy size="1 GB" />
            </Policies>
        </RollingFile>

        <Console name="out" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{ISO8601}{GMT} %-5p %C{2} (%F:%L) - %m%n" />
        </Console>

        <Async name="asyncApplication"> …
Run Code Online (Sandbox Code Playgroud)

logging rollingfileappender line-numbers pattern-layout log4j2

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

强制Log4Net RollingFileAppender滚动

根据Log4Net文档,RollingFileAppender将仅在记录消息时滚动日志文件.我需要登录到这个文件,但每天都将它导入另一个数据库.我不能使用数据库appender,因为我需要文件,我必须将数据从日志文件转换到数据库(它不是直接复制).问题是如果在午夜之后没有日志活动,则日志不会滚动.导入器查找前几天的文件(我无法更改此代码),因此如果没有活动且日志未滚动,则导入程序找不到该文件.无论如何强制日志在午夜滚动而没有另一个线程唤醒并迫使它滚动?自定义appender可以这样做吗?如果可能的话,我想避免这种情况.

log4net rollingfileappender

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

log4net fileappender未在Outlook ThisAddIn.cs中创建log-file.txt

我看不出这里有什么问题.我只想用我的Outlook AddIn将log4net写入日志文件.我的app.config文件中有以下内容:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
     <configSections>
          <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,Log4net"/>
     </configSections>
<log4net>
     <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender" >
         <param name="File" value="log-file.txt" />
         <param name="AppendToFile" value="true" />
         <rollingStyle value="Size" />
         <maxSizeRollBackups value="10" />
         <maximumFileSize value="10MB" />
         <staticLogFileName value="true" />
         <layout type="log4net.Layout.PatternLayout">
              <param name="ConversionPattern" value="%-5p%d{yyyy-MM-dd hh:mm:ss} – %m%n" />
         </layout>
     </appender>
     <root>
          <level value="DEBUG" />
          <appender-ref ref="LogFileAppender" />
     </root>
</log4net>
</configuration>
Run Code Online (Sandbox Code Playgroud)

以下是我的启动类中的相关语句,ThisAddIn.cs(注释显示我尝试过的变体):

//protected static readonly ILog log = LogManager.GetLogger("application-log");
public static readonly ILog log = LogManager.GetLogger(typeof(ThisAddIn));
private void ThisAddIn_Startup(object sender, System.EventArgs …
Run Code Online (Sandbox Code Playgroud)

c# log4net rollingfileappender outlook-addin fileappender

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

DailyRollingFileAppender不起作用

我用Log4j写一些日志我的程序.我在这个网站上找到并阅读了很多问题和答案,但我无法解决我的问题.

这是我的代码:

1. log4j.xml

<appender name="rollingfileAppender" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="append" value="true"/>
    <param name="file" value="logs/process.log"/>
    <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>
    <layout class="org.apache.log4j.PatternLayout">
       <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss:SSS} %-5p [%c{1}] %m%n"/>
    </layout>
</appender>
<root>
    <level value="DEBUG"/>
    <appender-ref ref="rollingfileAppender"/>
    <appender-ref ref="stdout"/>
</root>
Run Code Online (Sandbox Code Playgroud)

2.我的java代码

package TestPacket;

import org.apache.log4j.Logger;
import org.apache.log4j.xml.DOMConfigurator;


public class TestLog4jXML {
    static Logger logger = org.apache.log4j.Logger.getLogger(TestLog4jXML.class.getName());
    public TestLog4jXML() {
    }
    public static void main(String[] args) {
        try {
            DOMConfigurator.configure("log4j1.xml");
            logger.trace("Entering application.");
            logger.debug("Debug");
            logger.info("info");
            logger.warn("warn");
            logger.error("error");
            logger.fatal("fatal");
            lungtng();
        } catch (Exception e) {
            e.printStackTrace();
        }
    } …
Run Code Online (Sandbox Code Playgroud)

log4j rollingfileappender

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

Log4j Rollingpolicy和MaxbackupIndex

我使用以下代码每分钟翻转日志,它完美地运行.

log4j.appender.AllFlows=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.AllFlows.rollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.AllFlows.rollingPolicy.File=E:/Logs/AllFlows.log 
log4j.appender.AllFlows.rollingPolicy.FileNamePattern=E:/Logs/AllFlows.log.%d{yyyy-MM-dd-HH-mm}
log4j.appender.AllFlows.MaxBackupIndex=10
log4j.appender.AllFlows.layout=org.apache.log4j.PatternLayout
log4j.appender.AllFlows.layout.ConversionPattern=%d %-5p %x - %m%n
Run Code Online (Sandbox Code Playgroud)

但是我只是想知道,它们是MaxbackupIndex的替代品,因为当我使用TimebasedRollingPolicy时,这不能正常工作吗?

我使用log41.2.17和apache log4j附加功能

log4j rollingfileappender

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

log4j2定期清理日志文件

我使用log4j2来记录我的程序.在我的xml配置文件中,我有这个appender:

<RollingFile name="General" fileName="log/logs/giornale.log" filePattern="log/logs/log-%d{yyyyMMdd}.log">
    <PatternLayout>
        <Pattern>%d{HH:mm:ss,SSS} [%t] %-5level %logger{-1} - %msg%n</Pattern>
    </PatternLayout>
    <Policies>
        <TimeBasedTriggeringPolicy />
    </Policies>
</RollingFile>
Run Code Online (Sandbox Code Playgroud)

我需要的是一种配置它的方法,以便它自动删除所有超过n天的文件.
我已经找到像一些疑问这个,但他们不帮助,因为他们不说如何通过xml配置做到这一点.
为了缩短它,我想在上面的片段中指出像"MaxBackupIndex"这样的参数?或者我应该使用哪个其他参数(我可以在哪里放)?

java rollingfileappender log4j2

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