log4j2 - RollingFileAppender - 无效的跨设备链接

use*_*938 6 java rollingfileappender log4j2

我用log4j 2.8.1 我有这个log4j2.xml文件

<Configuration status="warn" name="MyAppx" packages="">
<Appenders>      
    <RollingFile append="true" name="MyFile" fileName="/tmp/app.log" filePattern="/var/log/myLogs/app-%d{MM-dd-yyyy}-%i.log">
        <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} s7tcp     %-5level %-30notEmpty{[%marker]} - %msg%xEx - %class{36} %L %M%n"/>
        <Policies>
            <SizeBasedTriggeringPolicy size="2 MB"/>
        </Policies>
        <DefaultRolloverStrategy max="20"/>
    </RollingFile>
</Appenders>
<Loggers>
    <Root level="INFO" includeLocation="true">
        <AppenderRef ref="MyFile" />
    </Root>
</Loggers>
Run Code Online (Sandbox Code Playgroud)

我记录到/tmp/app.log,如果文件变大2MB,应该移动到/var/log/myLogs/app-%d{MM-dd-yyyy}-%i.log

但我收到此错误消息:

2017-04-03 10:30:00,874 Thread-3 ERROR Unable to move file /tmp/app.log to /var/log/myLogs/app-04-03-2017-19.log: java.nio.file.AtomicMoveNotSupportedException /tmp/app.log -> /var/log/myLogs/app-04-03-2017-19.log: Invalid cross-device link
2017-04-03 10:30:12,107 Thread-3 ERROR Unable to move file /tmp/app.log to /var/log/myLogs/app-04-03-2017-20.log: java.nio.file.AtomicMoveNotSupportedException /tmp/app.log -> /var/log/myLogs/app-04-03-2017-20.log: Invalid cross-device link
2017-04-03 10:30:23,396 Thread-3 ERROR Unable to move file /tmp/app.log to /var/log/myLogs/app-04-03-2017-20.log: java.nio.file.AtomicMoveNotSupportedException /tmp/app.log -> /var/log/myLogs/app-04-03-2017-20.log: Invalid cross-device link
2017-04-03 10:30:34,624 Thread-3 ERROR Unable to move file /tmp/app.log to /var/log/myLogs/app-04-03-2017-20.log: java.nio.file.AtomicMoveNotSupportedException /tmp/app.log -> /var/log/myLogs/app-04-03-2017-20.log: Invalid cross-device link
Run Code Online (Sandbox Code Playgroud)

-1.log实际上只创建了第一个文件,当我停止java进程时创建了所有其他文件!

如果路径filePattern也在,/tmp/...它工作得很好!

任何想法可能是什么问题?