You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by rg...@apache.org on 2017/01/15 21:44:33 UTC

[1/3] logging-log4j2 git commit: LOG4J2-1101 - RollingFileAppender now supports omitting the file name and writing directly to the archive files.

Repository: logging-log4j2
Updated Branches:
  refs/heads/master 6f3fe2fe8 -> 8e88deb3e


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-4.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-4.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-4.gz
new file mode 100644
index 0000000..8c4c56f
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-4.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-5.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-5.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-5.gz
new file mode 100644
index 0000000..2586926
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-5.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-1.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-1.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-1.gz
new file mode 100644
index 0000000..2cb3dbe
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-1.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-2.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-2.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-2.gz
new file mode 100644
index 0000000..df8eb5f
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-2.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-3.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-3.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-3.gz
new file mode 100644
index 0000000..595e822
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-3.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-4.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-4.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-4.gz
new file mode 100644
index 0000000..e23bfa7
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-4.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-5.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-5.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-5.gz
new file mode 100644
index 0000000..2b62b60
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_05-5.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-1.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-1.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-1.gz
new file mode 100644
index 0000000..4029d87
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-1.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-10.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-10.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-10.gz
new file mode 100644
index 0000000..5e84491
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-10.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-11.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-11.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-11.gz
new file mode 100644
index 0000000..35e9106
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-11.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-12.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-12.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-12.gz
new file mode 100644
index 0000000..8c6c8c9
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-12.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-13.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-13.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-13.gz
new file mode 100644
index 0000000..d57e405
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-13.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-14.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-14.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-14.gz
new file mode 100644
index 0000000..3a51392
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-14.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-15.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-15.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-15.gz
new file mode 100644
index 0000000..3665dcd
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-15.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-16.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-16.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-16.gz
new file mode 100644
index 0000000..2082cfe
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-16.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-17.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-17.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-17.gz
new file mode 100644
index 0000000..e501588
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-17.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-18.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-18.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-18.gz
new file mode 100644
index 0000000..94c617d
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-18.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-19.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-19.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-19.gz
new file mode 100644
index 0000000..90b8ad5
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-19.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-2.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-2.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-2.gz
new file mode 100644
index 0000000..ae38614
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-2.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-20.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-20.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-20.gz
new file mode 100644
index 0000000..084b35f
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-20.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-3.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-3.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-3.gz
new file mode 100644
index 0000000..500fe48
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-3.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-4.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-4.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-4.gz
new file mode 100644
index 0000000..69d2c59
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-4.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-5.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-5.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-5.gz
new file mode 100644
index 0000000..582ffbf
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-5.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-6.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-6.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-6.gz
new file mode 100644
index 0000000..6c495ed
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-6.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-7.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-7.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-7.gz
new file mode 100644
index 0000000..a0e74ab
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-7.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-8.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-8.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-8.gz
new file mode 100644
index 0000000..eee5116
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-8.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-9.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-9.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-9.gz
new file mode 100644
index 0000000..44db59a
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_06-9.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-1.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-1.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-1.gz
new file mode 100644
index 0000000..84e8da8
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-1.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-10.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-10.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-10.gz
new file mode 100644
index 0000000..f21f32d
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-10.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-11.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-11.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-11.gz
new file mode 100644
index 0000000..2a5cf2c
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-11.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-12.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-12.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-12.gz
new file mode 100644
index 0000000..77bda42
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-12.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-13.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-13.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-13.gz
new file mode 100644
index 0000000..cd6efb0
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-13.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-14.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-14.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-14.gz
new file mode 100644
index 0000000..a770936
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-14.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-15.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-15.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-15.gz
new file mode 100644
index 0000000..8202f96
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-15.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-16.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-16.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-16.gz
new file mode 100644
index 0000000..b54b72b
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-16.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-17.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-17.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-17.gz
new file mode 100644
index 0000000..09062f6
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-17.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-18.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-18.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-18.gz
new file mode 100644
index 0000000..0e92dd6
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-18.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-19.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-19.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-19.gz
new file mode 100644
index 0000000..d676180
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-19.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-2.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-2.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-2.gz
new file mode 100644
index 0000000..325ec46
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-2.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-20.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-20.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-20.gz
new file mode 100644
index 0000000..3bb918c
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-20.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-21.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-21.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-21.gz
new file mode 100644
index 0000000..eb9047a
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-21.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-22.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-22.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-22.gz
new file mode 100644
index 0000000..4e8e476
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-22.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-23.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-23.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-23.gz
new file mode 100644
index 0000000..6628d1b
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-23.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-24.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-24.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-24.gz
new file mode 100644
index 0000000..bfc9cfb
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-24.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-25.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-25.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-25.gz
new file mode 100644
index 0000000..24cd8d0
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-25.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-26.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-26.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-26.gz
new file mode 100644
index 0000000..910de6b
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-26.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-27.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-27.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-27.gz
new file mode 100644
index 0000000..ceca019
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-27.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-28.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-28.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-28.gz
new file mode 100644
index 0000000..efe0f3c
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-28.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-29.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-29.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-29.gz
new file mode 100644
index 0000000..b2f5a65
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-29.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-3.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-3.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-3.gz
new file mode 100644
index 0000000..ffd78fa
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-3.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-4.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-4.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-4.gz
new file mode 100644
index 0000000..e1b0df9
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-4.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-5.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-5.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-5.gz
new file mode 100644
index 0000000..46d1e52
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-5.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-6.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-6.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-6.gz
new file mode 100644
index 0000000..dc950fd
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-6.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-7.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-7.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-7.gz
new file mode 100644
index 0000000..8179eef
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-7.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-8.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-8.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-8.gz
new file mode 100644
index 0000000..7012113
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-8.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-9.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-9.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-9.gz
new file mode 100644
index 0000000..8ede7e6
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_07-9.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-1.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-1.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-1.gz
new file mode 100644
index 0000000..abc6970
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-1.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-10.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-10.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-10.gz
new file mode 100644
index 0000000..286c4ad
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-10.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-11.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-11.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-11.gz
new file mode 100644
index 0000000..a896d25
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-11.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-12.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-12.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-12.gz
new file mode 100644
index 0000000..c6a7dc6
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-12.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-13.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-13.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-13.gz
new file mode 100644
index 0000000..1b7f95e
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-13.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-14.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-14.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-14.gz
new file mode 100644
index 0000000..3908509
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-14.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-15.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-15.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-15.gz
new file mode 100644
index 0000000..4063ac4
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-15.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-16.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-16.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-16.gz
new file mode 100644
index 0000000..d68ffff
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-16.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-17.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-17.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-17.gz
new file mode 100644
index 0000000..d2b3c80
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-17.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-18.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-18.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-18.gz
new file mode 100644
index 0000000..1eb490f
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-18.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-19.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-19.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-19.gz
new file mode 100644
index 0000000..00901ba
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-19.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-2.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-2.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-2.gz
new file mode 100644
index 0000000..e676105
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-2.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-20.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-20.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-20.gz
new file mode 100644
index 0000000..5eca03f
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-20.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-21.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-21.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-21.gz
new file mode 100644
index 0000000..9226c18
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-21.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-22.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-22.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-22.gz
new file mode 100644
index 0000000..165f22b
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-22.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-23.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-23.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-23.gz
new file mode 100644
index 0000000..079663c
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-23.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-24.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-24.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-24.gz
new file mode 100644
index 0000000..5ee9d98
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-24.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-25.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-25.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-25.gz
new file mode 100644
index 0000000..e6bcb1d
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-25.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-26.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-26.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-26.gz
new file mode 100644
index 0000000..de7fef6
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-26.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-27.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-27.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-27.gz
new file mode 100644
index 0000000..fb16a69
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-27.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-28.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-28.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-28.gz
new file mode 100644
index 0000000..eb7616b
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-28.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-29.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-29.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-29.gz
new file mode 100644
index 0000000..052d48f
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-29.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-3.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-3.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-3.gz
new file mode 100644
index 0000000..18dac25
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-3.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-4.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-4.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-4.gz
new file mode 100644
index 0000000..e12a936
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-4.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-5.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-5.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-5.gz
new file mode 100644
index 0000000..660c8fa
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-5.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-6.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-6.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-6.gz
new file mode 100644
index 0000000..60620e3
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-6.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-7.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-7.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-7.gz
new file mode 100644
index 0000000..4061c2f
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-7.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-8.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-8.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-8.gz
new file mode 100644
index 0000000..2263391
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-8.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-9.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-9.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-9.gz
new file mode 100644
index 0000000..7745f89
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_08-9.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-1.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-1.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-1.gz
new file mode 100644
index 0000000..a619cce
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-1.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-10.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-10.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-10.gz
new file mode 100644
index 0000000..3ea73de
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-10.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-11.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-11.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-11.gz
new file mode 100644
index 0000000..24d1a2c
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-11.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-12.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-12.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-12.gz
new file mode 100644
index 0000000..fa8c7c7
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-12.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-13.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-13.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-13.gz
new file mode 100644
index 0000000..0be4d8a
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-13.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-14.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-14.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-14.gz
new file mode 100644
index 0000000..f28ca6c
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-14.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-15.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-15.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-15.gz
new file mode 100644
index 0000000..6f7f918
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-15.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-16.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-16.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-16.gz
new file mode 100644
index 0000000..0b4cf75
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-16.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-17.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-17.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-17.gz
new file mode 100644
index 0000000..9e55730
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-17.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-18.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-18.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-18.gz
new file mode 100644
index 0000000..a69c3f5
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-18.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-19.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-19.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-19.gz
new file mode 100644
index 0000000..bc554f1
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-19.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-2.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-2.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-2.gz
new file mode 100644
index 0000000..18b9ac7
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-2.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-20.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-20.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-20.gz
new file mode 100644
index 0000000..2da4fed
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-20.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-21.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-21.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-21.gz
new file mode 100644
index 0000000..f4d6b3e
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-21.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-22.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-22.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-22.gz
new file mode 100644
index 0000000..336e7cc
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-22.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-23.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-23.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-23.gz
new file mode 100644
index 0000000..cfda7ec
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-23.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-24.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-24.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-24.gz
new file mode 100644
index 0000000..c4e15c9
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-24.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-25.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-25.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-25.gz
new file mode 100644
index 0000000..da0ea63
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-25.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-26.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-26.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-26.gz
new file mode 100644
index 0000000..ab275af
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-26.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-27.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-27.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-27.gz
new file mode 100644
index 0000000..9227376
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-27.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-28.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-28.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-28.gz
new file mode 100644
index 0000000..3188962
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-28.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-29.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-29.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-29.gz
new file mode 100644
index 0000000..8fa0ab8
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-29.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-3.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-3.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-3.gz
new file mode 100644
index 0000000..e61a84f
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-3.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-30
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-30 b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-30
new file mode 100644
index 0000000..8d1c8b6
--- /dev/null
+++ b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-30
@@ -0,0 +1 @@
+ 

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-4.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-4.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-4.gz
new file mode 100644
index 0000000..5b9f041
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-4.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-5.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-5.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-5.gz
new file mode 100644
index 0000000..5b4d123
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-5.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-6.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-6.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-6.gz
new file mode 100644
index 0000000..d88f76c
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-6.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-7.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-7.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-7.gz
new file mode 100644
index 0000000..ca0a93d
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-7.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-8.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-8.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-8.gz
new file mode 100644
index 0000000..ae1fd86
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-8.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-9.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-9.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-9.gz
new file mode 100644
index 0000000..427327e
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_09-9.gz differ


[3/3] logging-log4j2 git commit: LOG4J2-1101 - Add documentation. Add missing license headers

Posted by rg...@apache.org.
LOG4J2-1101 - Add documentation. Add missing license headers


Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/8e88deb3
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/8e88deb3
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/8e88deb3

Branch: refs/heads/master
Commit: 8e88deb3e7e09c5e3df9445d7930bc63b5c39f4b
Parents: acd8a4d
Author: Ralph Goers <rg...@nextiva.com>
Authored: Sun Jan 15 14:13:53 2017 -0700
Committer: Ralph Goers <rg...@nextiva.com>
Committed: Sun Jan 15 14:13:53 2017 -0700

----------------------------------------------------------------------
 .../rolling/DirectWriteRolloverStrategy.java    |  2 +
 .../core/appender/rolling/FileExtension.java    | 16 ++++
 .../core/net/SocketPerformancePreferences.java  | 16 ++++
 .../logging/log4j/core/CronRolloverApp.java     | 16 ++++
 .../core/async/Log4j2Jira1688AsyncTest.java     | 16 ++++
 .../log4j/core/async/Log4j2Jira1688Test.java    | 16 ++++
 src/changes/changes.xml                         |  3 +
 src/site/xdoc/manual/appenders.xml              | 86 +++++++++++++++++++-
 8 files changed, 169 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/8e88deb3/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectWriteRolloverStrategy.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectWriteRolloverStrategy.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectWriteRolloverStrategy.java
index 2d8cbc6..6861db2 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectWriteRolloverStrategy.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectWriteRolloverStrategy.java
@@ -46,6 +46,8 @@ import org.apache.logging.log4j.core.util.Integers;
  * on the file pattern, however the DirectWriteRolloverStrategy writes directly to a file and does not rename it
  * during rollover, except if it is compressed, in which case it will add the appropriate file extension.
  * </p>
+ *
+ * @since 2.8
  */
 @Plugin(name = "DirectWriteRolloverStrategy", category = Core.CATEGORY_NAME, printObject = true)
 public class DirectWriteRolloverStrategy extends AbstractRolloverStrategy implements DirectFileRolloverStrategy {

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/8e88deb3/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/FileExtension.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/FileExtension.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/FileExtension.java
index 8a6595e..9d0016f 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/FileExtension.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/FileExtension.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
 package org.apache.logging.log4j.core.appender.rolling;
 
 import java.io.File;

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/8e88deb3/log4j-core/src/main/java/org/apache/logging/log4j/core/net/SocketPerformancePreferences.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/net/SocketPerformancePreferences.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/net/SocketPerformancePreferences.java
index c7a246a..571acb6 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/net/SocketPerformancePreferences.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/net/SocketPerformancePreferences.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
 package org.apache.logging.log4j.core.net;
 
 import java.net.Socket;

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/8e88deb3/log4j-core/src/test/java/org/apache/logging/log4j/core/CronRolloverApp.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/CronRolloverApp.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/CronRolloverApp.java
index 7ba7816..59919da 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/CronRolloverApp.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/CronRolloverApp.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
 package org.apache.logging.log4j.core;
 
 import org.apache.logging.log4j.LogManager;

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/8e88deb3/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688AsyncTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688AsyncTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688AsyncTest.java
index 1f98edb..b846d74 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688AsyncTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688AsyncTest.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
 package org.apache.logging.log4j.core.async;
 
 import java.util.Arrays;

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/8e88deb3/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688Test.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688Test.java
index 475addc..57d9247 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688Test.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
 package org.apache.logging.log4j.core.async;
 
 import java.util.Arrays;

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/8e88deb3/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 2d51ffe..0020125 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -24,6 +24,9 @@
   </properties>
   <body>
     <release version="2.8" date="2017-MM-DD" description="GA Release 2.8">
+      <action issue="LOG4J2-1101" dev="rgoers" type="add">
+        RollingFileAppender now supports omitting the file name and writing directly to the archive files.
+      </action>
       <action issue="LOG4J2-1786" dev="rpopma" type="fix">
         ConfigurationScheduler now preserves interrupt flag during stop.
       </action>

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/8e88deb3/src/site/xdoc/manual/appenders.xml
----------------------------------------------------------------------
diff --git a/src/site/xdoc/manual/appenders.xml b/src/site/xdoc/manual/appenders.xml
index 233bf10..46f0ab8 100644
--- a/src/site/xdoc/manual/appenders.xml
+++ b/src/site/xdoc/manual/appenders.xml
@@ -2378,7 +2378,9 @@ public class JpaLogEntity extends AbstractLogEventWrapperEntity {
             be performed while the RolloverStrategy defines how the rollover should be done. If no RolloverStrategy
             is configured, RollingFileAppender will use the <a href="#DefaultRolloverStrategy">DefaultRolloverStrategy</a>.
             Since log4j-2.5, a <a href="#CustomDeleteOnRollover">custom delete action</a> can be configured in the
-            DefaultRolloverStrategy to run at rollover.
+            DefaultRolloverStrategy to run at rollover. Since 2.8 if no file name is configured then
+            <a href="DirectWriteRolloverStrategy">DirectWriteRolloverStrategy</a> will be used instead of
+            DefaultRolloverStrategy.
           </p>
           <p>
             File locking is not supported by the RollingFileAppender.
@@ -2735,7 +2737,38 @@ public class JpaLogEntity extends AbstractLogEventWrapperEntity {
                   </td>
                 </tr>
               </table>
-
+          <a name="DirectWriteRolloverStrategy"/>
+          <h5>DirectWrite Rollover Strategy</h5>
+            <p>
+              The DirectWriteRolloverStrategy causes log events to be written directly to files represented by the
+              file pattern. With this strategy file renames are not performed. If the size-based triggering policy
+              causes multiple files to be written durring the specified time period they will be numbered starting
+              at one and continually incremented until a time-based rollover occurs.
+            </p>
+            <table>
+              <caption align="top">DirectWriteRolloverStrategy Parameters</caption>
+              <tr>
+                <th>Parameter Name</th>
+                <th>Type</th>
+                <th>Description</th>
+              </tr>
+              <tr>
+                <td>maxFiles</td>
+                <td>String</td>
+                <td>The maximum number of files to allow in the time period matching the file pattern. If the
+                  number of files is exceeded the oldest file will be deleted. If specified, the value must
+                  be greater than 1. If the value is less than zero or omitted then the number of files will
+                  not be limited.</td>
+              </tr>
+              <tr>
+                <td>compressionLevel</td>
+                <td>integer</td>
+                <td>
+                  Sets the compression level, 0-9, where 0 = none, 1 = best speed, through 9 = best compression.
+                  Only implemented for ZIP files.
+                </td>
+              </tr>
+            </table>
           <p>
             Below is a sample configuration that uses a RollingFileAppender with both the time and size based
             triggering policies, will create up to 7 archives on the same day (1-7) that are stored in a directory
@@ -2814,6 +2847,55 @@ public class JpaLogEntity extends AbstractLogEventWrapperEntity {
     </Root>
   </Loggers>
 </Configuration>]]></pre>
+          <p>
+            This sample configuration uses a RollingFileAppender with both the cron and size based
+            triggering policies, and writes directly to an unlimited number of archive files. The cron
+            trigger causes a rollover every hour while the file size is limited to 250MB:
+          </p>
+
+          <pre class="prettyprint linenums"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
+<Configuration status="warn" name="MyApp" packages="">
+  <Appenders>
+    <RollingFile name="RollingFile" filePattern="logs/app-%d{yyyy-MM-dd-HH}-%i.log.gz">
+      <PatternLayout>
+        <Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
+      </PatternLayout>
+      <Policies>
+        <CronTriggeringPolicy schedule="0 0 * * * ?"/>
+        <SizeBasedTriggeringPolicy size="250 MB"/>
+      </Policies>
+    </RollingFile>
+  </Appenders>
+  <Loggers>
+    <Root level="error">
+      <AppenderRef ref="RollingFile"/>
+    </Root>
+  </Loggers>
+</Configuration>]]></pre>
+          <p>
+            This sample configuration is the same as the previous but limits the number of files saved each hour to 10:
+          </p>
+
+          <pre class="prettyprint linenums"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
+<Configuration status="warn" name="MyApp" packages="">
+  <Appenders>
+    <RollingFile name="RollingFile" filePattern="logs/app-%d{yyyy-MM-dd-HH}-%i.log.gz">
+      <PatternLayout>
+        <Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
+      </PatternLayout>
+      <Policies>
+        <CronTriggeringPolicy schedule="0 0 * * * ?"/>
+        <SizeBasedTriggeringPolicy size="250 MB"/>
+      </Policies>
+      <DirectWriteRolloverStrategy maxFiles="10"/>
+    </RollingFile>
+  </Appenders>
+  <Loggers>
+    <Root level="error">
+      <AppenderRef ref="RollingFile"/>
+    </Root>
+  </Loggers>
+</Configuration>]]></pre>
           <a name="CustomDeleteOnRollover"/>
           <h5>Log Archive Retention Policy: Delete on Rollover</h5>
           <p>


[2/3] logging-log4j2 git commit: LOG4J2-1101 - RollingFileAppender now supports omitting the file name and writing directly to the archive files.

Posted by rg...@apache.org.
LOG4J2-1101 - RollingFileAppender now supports omitting the file name and writing directly to the archive files.


Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/acd8a4d6
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/acd8a4d6
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/acd8a4d6

Branch: refs/heads/master
Commit: acd8a4d6e587ae58e0550ae75ab29b7cceb4c843
Parents: 6f3fe2f
Author: Ralph Goers <rg...@nextiva.com>
Authored: Sun Jan 15 13:28:12 2017 -0700
Committer: Ralph Goers <rg...@nextiva.com>
Committed: Sun Jan 15 13:28:12 2017 -0700

----------------------------------------------------------------------
 .../log4j/core/appender/FileManager.java        |   5 +-
 .../core/appender/OutputStreamManager.java      |   4 +
 .../core/appender/RollingFileAppender.java      |  25 ++-
 .../rolling/AbstractRolloverStrategy.java       |  74 +++++++
 .../appender/rolling/CronTriggeringPolicy.java  |   5 +
 .../rolling/DefaultRolloverStrategy.java        | 127 +----------
 .../rolling/DirectFileRolloverStrategy.java     |  25 +++
 .../rolling/DirectWriteRolloverStrategy.java    | 211 +++++++++++++++++++
 .../core/appender/rolling/FileExtension.java    | 109 ++++++++++
 .../core/appender/rolling/PatternProcessor.java |  31 ++-
 .../appender/rolling/RollingFileManager.java    |  80 +++++--
 .../appender/rolling/EligibleFilesTest.java     |  51 +++++
 .../RollingAppenderCronEvery2DirectTest.java    |  86 ++++++++
 .../rolling/RollingAppenderDirectWriteTest.java |  66 ++++++
 .../rolling/RollingAppenderSizeTest.java        |   5 +-
 .../RollingAppenderTimeAndSizeDirectTest.java   |  67 ++++++
 .../log4j-rolling-cron-every2-direct.xml        |  54 +++++
 .../src/test/resources/log4j-rolling-direct.xml |  50 +++++
 .../test/resources/log4j-rolling3-direct.xml    |  54 +++++
 .../rolloverPath/log4j.txt.20170112_00-1.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_00-2.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_01-1.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_02-1.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_02-2.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_02-3.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_02-4.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_02-5.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_03-1.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_03-2.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_03-3.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_03-4.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_03-5.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_04-1.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_04-2.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_04-3.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_04-4.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_04-5.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_05-1.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_05-2.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_05-3.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_05-4.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_05-5.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_06-1.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_06-10.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_06-11.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_06-12.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_06-13.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_06-14.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_06-15.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_06-16.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_06-17.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_06-18.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_06-19.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_06-2.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_06-20.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_06-3.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_06-4.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_06-5.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_06-6.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_06-7.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_06-8.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_06-9.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_07-1.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_07-10.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-11.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-12.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-13.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-14.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-15.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-16.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-17.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-18.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-19.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-2.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_07-20.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-21.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-22.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-23.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-24.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-25.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-26.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-27.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-28.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-29.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_07-3.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_07-4.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_07-5.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_07-6.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_07-7.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_07-8.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_07-9.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_08-1.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_08-10.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-11.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-12.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-13.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-14.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-15.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-16.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-17.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-18.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-19.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-2.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_08-20.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-21.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-22.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-23.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-24.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-25.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-26.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-27.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-28.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-29.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_08-3.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_08-4.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_08-5.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_08-6.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_08-7.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_08-8.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_08-9.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_09-1.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_09-10.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-11.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-12.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-13.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-14.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-15.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-16.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-17.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-18.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-19.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-2.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_09-20.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-21.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-22.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-23.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-24.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-25.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-26.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-27.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-28.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-29.gz    | Bin 0 -> 47 bytes
 .../rolloverPath/log4j.txt.20170112_09-3.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_09-30       |   1 +
 .../rolloverPath/log4j.txt.20170112_09-4.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_09-5.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_09-6.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_09-7.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_09-8.gz     | Bin 0 -> 46 bytes
 .../rolloverPath/log4j.txt.20170112_09-9.gz     | Bin 0 -> 46 bytes
 150 files changed, 967 insertions(+), 163 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/FileManager.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/FileManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/FileManager.java
index 03e44c0..410e745 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/FileManager.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/FileManager.java
@@ -25,6 +25,7 @@ import java.io.Serializable;
 import java.nio.ByteBuffer;
 import java.nio.channels.FileChannel;
 import java.nio.channels.FileLock;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -113,7 +114,9 @@ public class FileManager extends OutputStreamManager {
 
     @Override
     protected OutputStream createOutputStream() throws FileNotFoundException {
-        return new FileOutputStream(getFileName(), isAppend);
+        String filename = getFileName();
+        LOGGER.debug("Now writing to {} at {}", filename, new Date());
+        return new FileOutputStream(filename, isAppend);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/OutputStreamManager.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/OutputStreamManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/OutputStreamManager.java
index d7a2627..bfce7de 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/OutputStreamManager.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/OutputStreamManager.java
@@ -157,6 +157,10 @@ public class OutputStreamManager extends AbstractManager implements ByteBufferDe
         return getCount() > 0;
     }
 
+    public boolean hasOutputStream() {
+        return os != null;
+    }
+
     protected OutputStream getOutputStream() throws IOException {
         if (os == null) {
             os = createOutputStream();

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/RollingFileAppender.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/RollingFileAppender.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/RollingFileAppender.java
index 81a4551..c3e092a 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/RollingFileAppender.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/RollingFileAppender.java
@@ -28,9 +28,11 @@ import org.apache.logging.log4j.core.Filter;
 import org.apache.logging.log4j.core.Layout;
 import org.apache.logging.log4j.core.LogEvent;
 import org.apache.logging.log4j.core.appender.rolling.DefaultRolloverStrategy;
+import org.apache.logging.log4j.core.appender.rolling.DirectWriteRolloverStrategy;
 import org.apache.logging.log4j.core.appender.rolling.RollingFileManager;
 import org.apache.logging.log4j.core.appender.rolling.RolloverStrategy;
 import org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy;
+import org.apache.logging.log4j.core.appender.rolling.DirectFileRolloverStrategy;
 import org.apache.logging.log4j.core.config.Configuration;
 import org.apache.logging.log4j.core.config.plugins.Plugin;
 import org.apache.logging.log4j.core.config.plugins.PluginBuilderAttribute;
@@ -59,7 +61,6 @@ public final class RollingFileAppender extends AbstractOutputStreamAppender<Roll
             implements org.apache.logging.log4j.core.util.Builder<RollingFileAppender> {
 
         @PluginBuilderAttribute
-        @Required
         private String fileName;
 
         @PluginBuilderAttribute
@@ -103,11 +104,6 @@ public final class RollingFileAppender extends AbstractOutputStreamAppender<Roll
                 LOGGER.warn("RollingFileAppender '{}': The bufferSize is set to {} but bufferedIO is not true", getName(), bufferSize);
             }
 
-            if (fileName == null) {
-                LOGGER.error("RollingFileAppender '{}': No file name provided.", getName());
-                return null;
-            }
-
             if (filePattern == null) {
                 LOGGER.error("RollingFileAppender '{}': No file name pattern provided.", getName());
                 return null;
@@ -119,13 +115,16 @@ public final class RollingFileAppender extends AbstractOutputStreamAppender<Roll
             }
 
             if (strategy == null) {
-                strategy = DefaultRolloverStrategy.createStrategy(null, null, null,
-                        String.valueOf(Deflater.DEFAULT_COMPRESSION), null, true, getConfiguration());
-            }
-
-            if (strategy == null) {
-                strategy = DefaultRolloverStrategy.createStrategy(null, null, null,
-                        String.valueOf(Deflater.DEFAULT_COMPRESSION), null, true, getConfiguration());
+                if (fileName != null) {
+                    strategy = DefaultRolloverStrategy.createStrategy(null, null, null,
+                            String.valueOf(Deflater.DEFAULT_COMPRESSION), null, true, getConfiguration());
+                } else {
+                    strategy = DirectWriteRolloverStrategy.createStrategy(null,
+                            String.valueOf(Deflater.DEFAULT_COMPRESSION), null, true, getConfiguration());
+                }
+            } else if (fileName == null && !(strategy instanceof DirectFileRolloverStrategy)) {
+                LOGGER.error("RollingFileAppender '{}': When no file name is provided a DirectFilenameRolloverStrategy must be configured");
+                return null;
             }
 
             final Layout<? extends Serializable> layout = getOrCreateLayout();

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.java
index 702e3af..c66cf75 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.java
@@ -16,7 +16,28 @@
  */
 package org.apache.logging.log4j.core.appender.rolling;
 
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.DirectoryStream;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.SortedMap;
+import java.util.TreeMap;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
 import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.LoggingException;
+import org.apache.logging.log4j.core.appender.rolling.action.Action;
+import org.apache.logging.log4j.core.appender.rolling.action.CommonsCompressAction;
+import org.apache.logging.log4j.core.appender.rolling.action.CompositeAction;
+import org.apache.logging.log4j.core.appender.rolling.action.GzCompressAction;
+import org.apache.logging.log4j.core.appender.rolling.action.ZipCompressAction;
 import org.apache.logging.log4j.status.StatusLogger;
 
 /**
@@ -28,4 +49,57 @@ public abstract class AbstractRolloverStrategy implements RolloverStrategy {
      * Allow subclasses access to the status logger without creating another instance.
      */
     protected static final Logger LOGGER = StatusLogger.getLogger();
+
+    protected Action merge(final Action compressAction, final List<Action> custom, final boolean stopOnError) {
+        if (custom.isEmpty()) {
+            return compressAction;
+        }
+        if (compressAction == null) {
+            return new CompositeAction(custom, stopOnError);
+        }
+        final List<Action> all = new ArrayList<>();
+        all.add(compressAction);
+        all.addAll(custom);
+        return new CompositeAction(all, stopOnError);
+    }
+
+    protected int suffixLength(final String lowFilename) {
+        for (final FileExtension extension : FileExtension.values()) {
+            if (extension.isExtensionFor(lowFilename)) {
+                return extension.length();
+            }
+        }
+        return 0;
+    }
+
+    protected SortedMap<Integer, Path> getEligibleFiles(String path) {
+        SortedMap<Integer, Path> eligibleFiles = new TreeMap<>();
+        File file = new File(path);
+        File parent = file.getParentFile();
+        parent.mkdirs();
+        if (!path.contains("--1")) {
+            return eligibleFiles;
+        }
+        Path dir = parent.toPath();
+        String fileName = file.getName();
+        int suffixLength = suffixLength(fileName);
+        if (suffixLength > 0) {
+            fileName = fileName.substring(0, fileName.length() - suffixLength) + ".*";
+        }
+        String filePattern = fileName.replace("--1", "-(\\d+)");
+        Pattern pattern = Pattern.compile(filePattern);
+
+        try (DirectoryStream<Path> stream = Files.newDirectoryStream(dir)) {
+            for (Path entry: stream) {
+                Matcher matcher = pattern.matcher(entry.toFile().getName());
+                if (matcher.matches()) {
+                    Integer index = Integer.parseInt(matcher.group(1));
+                    eligibleFiles.put(index, entry);
+                }
+            }
+        } catch (IOException ioe) {
+            throw new LoggingException("Error reading folder " + dir + " " + ioe.getMessage(), ioe);
+        }
+        return eligibleFiles;
+    }
 }

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.java
index e8f4208..b5e9700 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.java
@@ -69,6 +69,9 @@ public final class CronTriggeringPolicy extends AbstractTriggeringPolicy {
         final Date now = new Date();
         final Date lastRollForFile = cronExpression.getPrevFireTime(new Date(this.manager.getFileTime()));
         final Date lastRegularRoll = cronExpression.getPrevFireTime(new Date());
+        aManager.getPatternProcessor().setCurrentFileTime(lastRegularRoll.getTime());
+        LOGGER.debug("LastRollForFile {}, LastRegularRole {}", lastRollForFile, lastRegularRoll);
+        aManager.getPatternProcessor().setPrevFileTime(lastRegularRoll.getTime());
         if (checkOnStartup && lastRollForFile != null && lastRegularRoll != null &&
                 lastRollForFile.before(lastRegularRoll)) {
             lastRollDate = lastRollForFile;
@@ -145,6 +148,8 @@ public final class CronTriggeringPolicy extends AbstractTriggeringPolicy {
 
     private void rollover() {
         manager.getPatternProcessor().setPrevFileTime(lastRollDate.getTime());
+        final Date thisRoll = cronExpression.getPrevFireTime(new Date());
+        manager.getPatternProcessor().setCurrentFileTime(thisRoll.getTime());
         manager.rollover();
         if (future != null) {
             lastRollDate = future.getFireTime();

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.java
index df79d1e..6feffd5 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.java
@@ -77,99 +77,6 @@ import org.apache.logging.log4j.core.util.Integers;
 @Plugin(name = "DefaultRolloverStrategy", category = Core.CATEGORY_NAME, printObject = true)
 public class DefaultRolloverStrategy extends AbstractRolloverStrategy {
 
-    /**
-     * Enumerates over supported file extensions.
-     * <p>
-     * Package-protected for unit tests.
-     */
-    static enum FileExtensions {
-        ZIP(".zip") {
-            @Override
-            Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
-                    final int compressionLevel) {
-                return new ZipCompressAction(source(renameTo), target(compressedName), deleteSource, compressionLevel);
-            }
-        },
-        GZ(".gz") {
-            @Override
-            Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
-                    final int compressionLevel) {
-                return new GzCompressAction(source(renameTo), target(compressedName), deleteSource);
-            }
-        },
-        BZIP2(".bz2") {
-            @Override
-            Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
-                    final int compressionLevel) {
-                // One of "gz", "bzip2", "xz", "pack200", or "deflate".
-                return new CommonsCompressAction("bzip2", source(renameTo), target(compressedName), deleteSource);
-            }
-        },
-        DEFLATE(".deflate") {
-            @Override
-            Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
-                    final int compressionLevel) {
-                // One of "gz", "bzip2", "xz", "pack200", or "deflate".
-                return new CommonsCompressAction("deflate", source(renameTo), target(compressedName), deleteSource);
-            }
-        },
-        PACK200(".pack200") {
-            @Override
-            Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
-                    final int compressionLevel) {
-                // One of "gz", "bzip2", "xz", "pack200", or "deflate".
-                return new CommonsCompressAction("pack200", source(renameTo), target(compressedName), deleteSource);
-            }
-        },
-        XZ(".xz") {
-            @Override
-            Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
-                    final int compressionLevel) {
-                // One of "gz", "bzip2", "xz", "pack200", or "deflate".
-                return new CommonsCompressAction("xz", source(renameTo), target(compressedName), deleteSource);
-            }
-        };
-
-        static FileExtensions lookup(final String fileExtension) {
-            for (final FileExtensions ext : values()) {
-                if (ext.isExtensionFor(fileExtension)) {
-                    return ext;
-                }
-            }
-            return null;
-        }
-
-        private final String extension;
-
-        private FileExtensions(final String extension) {
-            Objects.requireNonNull(extension, "extension");
-            this.extension = extension;
-        }
-
-        abstract Action createCompressAction(String renameTo, String compressedName, boolean deleteSource,
-                int compressionLevel);
-
-        String getExtension() {
-            return extension;
-        }
-
-        boolean isExtensionFor(final String s) {
-            return s.endsWith(this.extension);
-        }
-
-        int length() {
-            return extension.length();
-        }
-
-        File source(final String fileName) {
-            return new File(fileName);
-        }
-
-        File target(final String fileName) {
-            return new File(fileName);
-        }
-    }
-
     private static final int MIN_WINDOW_SIZE = 1;
     private static final int DEFAULT_WINDOW_SIZE = 7;
 
@@ -283,19 +190,6 @@ public class DefaultRolloverStrategy extends AbstractRolloverStrategy {
         return useMax;
     }
 
-    private Action merge(final Action compressAction, final List<Action> custom, final boolean stopOnError) {
-        if (custom.isEmpty()) {
-            return compressAction;
-        }
-        if (compressAction == null) {
-            return new CompositeAction(custom, stopOnError);
-        }
-        final List<Action> all = new ArrayList<>();
-        all.add(compressAction);
-        all.addAll(custom);
-        return new CompositeAction(all, stopOnError);
-    }
-
     private int purge(final int lowIndex, final int highIndex, final RollingFileManager manager) {
         return useMax ? purgeAscending(lowIndex, highIndex, manager) : purgeDescending(lowIndex, highIndex, manager);
     }
@@ -531,13 +425,13 @@ public class DefaultRolloverStrategy extends AbstractRolloverStrategy {
         final String compressedName = renameTo;
         Action compressAction = null;
 
-        for (final FileExtensions ext : FileExtensions.values()) { // LOG4J2-1077 support other compression formats
-            if (ext.isExtensionFor(renameTo)) {
-                renameTo = renameTo.substring(0, renameTo.length() - ext.length()); // LOG4J2-1135 omit extension!
-                compressAction = ext.createCompressAction(renameTo, compressedName, true, compressionLevel);
-                break;
-            }
+        FileExtension fileExtension = manager.getFileExtension();
+        if (fileExtension != null) {
+            renameTo = renameTo.substring(0, renameTo.length() - fileExtension.length());
+            compressAction = fileExtension.createCompressAction(renameTo, compressedName,
+                    true, compressionLevel);
         }
+
         if (currentFileName.equals(renameTo)) {
             LOGGER.warn("Attempt to rename file {} to itself will be ignored", currentFileName);
             return new RolloverDescriptionImpl(currentFileName, false, null, null);
@@ -550,15 +444,6 @@ public class DefaultRolloverStrategy extends AbstractRolloverStrategy {
         return new RolloverDescriptionImpl(currentFileName, false, renameAction, asyncAction);
     }
 
-    private int suffixLength(final String lowFilename) {
-        for (final FileExtensions extension : FileExtensions.values()) {
-            if (extension.isExtensionFor(lowFilename)) {
-                return extension.length();
-            }
-        }
-        return 0;
-    }
-
     @Override
     public String toString() {
         return "DefaultRolloverStrategy(min=" + minIndex + ", max=" + maxIndex + ')';

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectFileRolloverStrategy.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectFileRolloverStrategy.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectFileRolloverStrategy.java
new file mode 100644
index 0000000..4d27f8d
--- /dev/null
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectFileRolloverStrategy.java
@@ -0,0 +1,25 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
+package org.apache.logging.log4j.core.appender.rolling;
+
+/**
+ * Created by rgoers on 1/12/17.
+ */
+public interface DirectFileRolloverStrategy {
+
+    String getCurrentFileName(final RollingFileManager manager);
+}

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectWriteRolloverStrategy.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectWriteRolloverStrategy.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectWriteRolloverStrategy.java
new file mode 100644
index 0000000..2d8cbc6
--- /dev/null
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DirectWriteRolloverStrategy.java
@@ -0,0 +1,211 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
+package org.apache.logging.log4j.core.appender.rolling;
+
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.SortedMap;
+import java.util.concurrent.TimeUnit;
+import java.util.zip.Deflater;
+
+import org.apache.logging.log4j.core.Core;
+import org.apache.logging.log4j.core.appender.rolling.action.Action;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.plugins.Plugin;
+import org.apache.logging.log4j.core.config.plugins.PluginAttribute;
+import org.apache.logging.log4j.core.config.plugins.PluginConfiguration;
+import org.apache.logging.log4j.core.config.plugins.PluginElement;
+import org.apache.logging.log4j.core.config.plugins.PluginFactory;
+import org.apache.logging.log4j.core.lookup.StrSubstitutor;
+import org.apache.logging.log4j.core.util.Integers;
+
+/**
+ * When rolling over, <code>DirectWriteRolloverStrategy</code> writes directly to the file as resolved by the file
+ * pattern. Files will be renamed files according to an algorithm as described below.
+ *
+ * <p>
+ * The DirectWriteRolloverStrategy uses similar logic as DefaultRolloverStrategy to determine the file name based
+ * on the file pattern, however the DirectWriteRolloverStrategy writes directly to a file and does not rename it
+ * during rollover, except if it is compressed, in which case it will add the appropriate file extension.
+ * </p>
+ */
+@Plugin(name = "DirectWriteRolloverStrategy", category = Core.CATEGORY_NAME, printObject = true)
+public class DirectWriteRolloverStrategy extends AbstractRolloverStrategy implements DirectFileRolloverStrategy {
+
+    private static final int DEFAULT_MAX_FILES = 7;
+
+    /**
+     * Creates the DirectWriteRolloverStrategy.
+     *
+     * @param maxFiles The maximum number of files that match the date portion of the pattern to keep.
+     * @param compressionLevelStr The compression level, 0 (less) through 9 (more); applies only to ZIP files.
+     * @param customActions custom actions to perform asynchronously after rollover
+     * @param stopCustomActionsOnError whether to stop executing asynchronous actions if an error occurs
+     * @param config The Configuration.
+     * @return A DefaultRolloverStrategy.
+     */
+    @PluginFactory
+    public static DirectWriteRolloverStrategy createStrategy(
+            // @formatter:off
+            @PluginAttribute("maxFiles") final String maxFiles,
+            @PluginAttribute("compressionLevel") final String compressionLevelStr,
+            @PluginElement("Actions") final Action[] customActions,
+            @PluginAttribute(value = "stopCustomActionsOnError", defaultBoolean = true)
+                    final boolean stopCustomActionsOnError,
+            @PluginConfiguration final Configuration config) {
+            // @formatter:on
+        int maxIndex = Integer.MAX_VALUE;
+        if (maxFiles != null) {
+            maxIndex = Integer.parseInt(maxFiles);
+            if (maxIndex < 0) {
+                maxIndex = Integer.MAX_VALUE;
+            } else if (maxIndex < 2) {
+                LOGGER.error("Maximum files too small. Limited to " + DEFAULT_MAX_FILES);
+                maxIndex = DEFAULT_MAX_FILES;
+            }
+        }
+        final int compressionLevel = Integers.parseInt(compressionLevelStr, Deflater.DEFAULT_COMPRESSION);
+        return new DirectWriteRolloverStrategy(maxIndex, compressionLevel, config.getStrSubstitutor(),
+                customActions, stopCustomActionsOnError);
+    }
+
+    /**
+     * Index for most recent log file.
+     */
+    private final int maxFiles;
+    private final StrSubstitutor strSubstitutor;
+    private final int compressionLevel;
+    private final List<Action> customActions;
+    private final boolean stopCustomActionsOnError;
+    private volatile String currentFileName;
+    private int nextIndex = -1;
+
+    /**
+     * Constructs a new instance.
+     *
+     * @param maxFiles The minimum index.
+     * @param customActions custom actions to perform asynchronously after rollover
+     * @param stopCustomActionsOnError whether to stop executing asynchronous actions if an error occurs
+     */
+    protected DirectWriteRolloverStrategy(final int maxFiles, final int compressionLevel,
+                                          final StrSubstitutor strSubstitutor, final Action[] customActions,
+                                          final boolean stopCustomActionsOnError) {
+        this.maxFiles = maxFiles;
+        this.compressionLevel = compressionLevel;
+        this.strSubstitutor = strSubstitutor;
+        this.stopCustomActionsOnError = stopCustomActionsOnError;
+        this.customActions = customActions == null ? Collections.<Action> emptyList() : Arrays.asList(customActions);
+    }
+
+    public int getCompressionLevel() {
+        return this.compressionLevel;
+    }
+
+    public List<Action> getCustomActions() {
+        return customActions;
+    }
+
+    public int getMaxFiles() {
+        return this.maxFiles;
+    }
+
+    public StrSubstitutor getStrSubstitutor() {
+        return strSubstitutor;
+    }
+
+    public boolean isStopCustomActionsOnError() {
+        return stopCustomActionsOnError;
+    }
+
+    private SortedMap<Integer, Path> getEligibleFiles(final RollingFileManager manager) {
+        final StringBuilder buf = new StringBuilder();
+        manager.getPatternProcessor().formatFileName(strSubstitutor, buf, -1);
+        return getEligibleFiles(buf.toString());
+    }
+
+    private int purge(final RollingFileManager manager) {
+        SortedMap<Integer, Path> eligibleFiles = getEligibleFiles(manager);
+        LOGGER.debug("Found {} eligible files, max is  {}", eligibleFiles.size(), maxFiles);
+        while (eligibleFiles.size() >= maxFiles) {
+            try {
+                Integer key = eligibleFiles.firstKey();
+                Files.delete(eligibleFiles.get(key));
+                eligibleFiles.remove(key);
+            } catch (IOException ioe) {
+                LOGGER.error("Unable to delete {}", eligibleFiles.firstKey(), ioe);
+                break;
+            }
+        }
+        return eligibleFiles.size() > 0 ? eligibleFiles.lastKey() : 1;
+    }
+
+    public String getCurrentFileName(final RollingFileManager manager) {
+        if (currentFileName == null) {
+            SortedMap<Integer, Path> eligibleFiles = getEligibleFiles(manager);
+            final int fileIndex = eligibleFiles.size() > 0 ? (nextIndex > 0 ? nextIndex : eligibleFiles.size()) : 1;
+            final StringBuilder buf = new StringBuilder(255);
+            manager.getPatternProcessor().formatFileName(strSubstitutor, buf, true, fileIndex);
+            int suffixLength = suffixLength(buf.toString());
+            String name = suffixLength > 0 ? buf.substring(0, buf.length() - suffixLength) : buf.toString();
+            currentFileName = name;
+        }
+        return currentFileName;
+    }
+
+    /**
+     * Performs the rollover.
+     *
+     * @param manager The RollingFileManager name for current active log file.
+     * @return A RolloverDescription.
+     * @throws SecurityException if an error occurs.
+     */
+    @Override
+    public RolloverDescription rollover(final RollingFileManager manager) throws SecurityException {
+        LOGGER.debug("Rolling " + currentFileName);
+        if (maxFiles < 0) {
+            return null;
+        }
+        final long startNanos = System.nanoTime();
+        final int fileIndex = purge(manager);
+        if (LOGGER.isTraceEnabled()) {
+            final double durationMillis = TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - startNanos);
+            LOGGER.trace("DirectWriteRolloverStrategy.purge() took {} milliseconds", durationMillis);
+        }
+        Action compressAction = null;
+        final String sourceName = currentFileName;
+        currentFileName = null;
+        nextIndex = fileIndex + 1;
+        FileExtension fileExtension = manager.getFileExtension();
+        if (fileExtension != null) {
+            compressAction = fileExtension.createCompressAction(sourceName, sourceName + fileExtension.getExtension(),
+                    true, compressionLevel);
+        }
+
+        final Action asyncAction = merge(compressAction, customActions, stopCustomActionsOnError);
+        return new RolloverDescriptionImpl(sourceName, false, null, asyncAction);
+    }
+
+    @Override
+    public String toString() {
+        return "DirectWriteRolloverStrategy(maxFiles=" + maxFiles + ')';
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/FileExtension.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/FileExtension.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/FileExtension.java
new file mode 100644
index 0000000..8a6595e
--- /dev/null
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/FileExtension.java
@@ -0,0 +1,109 @@
+package org.apache.logging.log4j.core.appender.rolling;
+
+import java.io.File;
+import java.util.Objects;
+
+import org.apache.logging.log4j.core.appender.rolling.action.Action;
+import org.apache.logging.log4j.core.appender.rolling.action.CommonsCompressAction;
+import org.apache.logging.log4j.core.appender.rolling.action.GzCompressAction;
+import org.apache.logging.log4j.core.appender.rolling.action.ZipCompressAction;
+
+/**
+ *  Enumerates over supported file extensions for compression.
+ */
+public enum FileExtension {
+    ZIP(".zip") {
+        @Override
+        Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
+                                    final int compressionLevel) {
+            return new ZipCompressAction(source(renameTo), target(compressedName), deleteSource, compressionLevel);
+        }
+    },
+    GZ(".gz") {
+        @Override
+        Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
+                                    final int compressionLevel) {
+            return new GzCompressAction(source(renameTo), target(compressedName), deleteSource);
+        }
+    },
+    BZIP2(".bz2") {
+        @Override
+        Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
+                                    final int compressionLevel) {
+            // One of "gz", "bzip2", "xz", "pack200", or "deflate".
+            return new CommonsCompressAction("bzip2", source(renameTo), target(compressedName), deleteSource);
+        }
+    },
+    DEFLATE(".deflate") {
+        @Override
+        Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
+                                    final int compressionLevel) {
+            // One of "gz", "bzip2", "xz", "pack200", or "deflate".
+            return new CommonsCompressAction("deflate", source(renameTo), target(compressedName), deleteSource);
+        }
+    },
+    PACK200(".pack200") {
+        @Override
+        Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
+                                    final int compressionLevel) {
+            // One of "gz", "bzip2", "xz", "pack200", or "deflate".
+            return new CommonsCompressAction("pack200", source(renameTo), target(compressedName), deleteSource);
+        }
+    },
+    XZ(".xz") {
+        @Override
+        Action createCompressAction(final String renameTo, final String compressedName, final boolean deleteSource,
+                                    final int compressionLevel) {
+            // One of "gz", "bzip2", "xz", "pack200", or "deflate".
+            return new CommonsCompressAction("xz", source(renameTo), target(compressedName), deleteSource);
+        }
+    };
+
+    public static FileExtension lookup(final String fileExtension) {
+        for (final FileExtension ext : values()) {
+            if (ext.isExtensionFor(fileExtension)) {
+                return ext;
+            }
+        }
+        return null;
+    }
+
+    public static FileExtension lookupForFile(final String fileName) {
+        for (final FileExtension ext : values()) {
+            if (fileName.endsWith(ext.extension)) {
+                return ext;
+            }
+        }
+        return null;
+    }
+
+    private final String extension;
+
+    private FileExtension(final String extension) {
+        Objects.requireNonNull(extension, "extension");
+        this.extension = extension;
+    }
+
+    abstract Action createCompressAction(String renameTo, String compressedName, boolean deleteSource,
+                                         int compressionLevel);
+
+    String getExtension() {
+        return extension;
+    }
+
+    boolean isExtensionFor(final String s) {
+        return s.endsWith(this.extension);
+    }
+
+    int length() {
+        return extension.length();
+    }
+
+    File source(final String fileName) {
+        return new File(fileName);
+    }
+
+    File target(final String fileName) {
+        return new File(fileName);
+    } 
+}

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
index 6cfec53..1c7926b 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
@@ -55,6 +55,7 @@ public class PatternProcessor {
 
     private long prevFileTime = 0;
     private long nextFileTime = 0;
+    private long currentFileTime = 0;
 
     private RolloverFrequency frequency = null;
 
@@ -92,11 +93,20 @@ public class PatternProcessor {
         }
     }
 
+    public long getCurrentFileTime() {
+        return currentFileTime;
+    }
+
+    public void setCurrentFileTime(long currentFileTime) {
+        this.currentFileTime = currentFileTime;
+    }
+
     public long getPrevFileTime() {
         return prevFileTime;
     }
 
     public void setPrevFileTime(final long prevFileTime) {
+        LOGGER.debug("Setting prev file time to {}", new Date(prevFileTime));
         this.prevFileTime = prevFileTime;
     }
 
@@ -215,8 +225,11 @@ public class PatternProcessor {
      * @param buf string buffer to which formatted file name is appended, may not be null.
      * @param obj object to be evaluated in formatting, may not be null.
      */
-    public final void formatFileName(final StringBuilder buf, final Object obj) {
-        final long time = prevFileTime == 0 ? System.currentTimeMillis() : prevFileTime;
+    public final void formatFileName(final StringBuilder buf, final boolean useCurrentTime, final Object obj) {
+        long time = useCurrentTime ? currentFileTime : prevFileTime;
+        if (time == 0) {
+            time = System.currentTimeMillis();
+        }
         formatFileName(buf, new Date(time), obj);
     }
 
@@ -227,9 +240,21 @@ public class PatternProcessor {
      * @param obj object to be evaluated in formatting, may not be null.
      */
     public final void formatFileName(final StrSubstitutor subst, final StringBuilder buf, final Object obj) {
+        formatFileName(subst, buf, false, obj);
+    }
+
+    /**
+     * Formats file name.
+     * @param subst The StrSubstitutor.
+     * @param buf string buffer to which formatted file name is appended, may not be null.
+     * @param obj object to be evaluated in formatting, may not be null.
+     */
+    public final void formatFileName(final StrSubstitutor subst, final StringBuilder buf, final boolean useCurrentTime,
+                                     final Object obj) {
         // LOG4J2-628: we deliberately use System time, not the log4j.Clock time
         // for creating the file name of rolled-over files.
-        final long time = prevFileTime == 0 ? System.currentTimeMillis() : prevFileTime;
+        final long time = useCurrentTime && currentFileTime != 0 ? currentFileTime :
+                prevFileTime != 0 ? prevFileTime : System.currentTimeMillis();
         formatFileName(buf, new Date(time), obj);
         final LogEvent event = new Log4jLogEvent.Builder().setTimeMillis(time).build();
         final String fileName = subst.replace(event, buf);

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
index 10cb79e..afe370d 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
@@ -56,6 +56,8 @@ public class RollingFileManager extends FileManager {
     private volatile RolloverStrategy rolloverStrategy;
     private volatile boolean renameEmptyFiles = false;
     private volatile boolean initialized = false;
+    private volatile String fileName;
+    private FileExtension fileExtension;
 
     private static final AtomicReferenceFieldUpdater<RollingFileManager, TriggeringPolicy> triggeringPolicyUpdater =
             AtomicReferenceFieldUpdater.newUpdater(RollingFileManager.class, TriggeringPolicy.class, "triggeringPolicy");
@@ -84,6 +86,8 @@ public class RollingFileManager extends FileManager {
         this.rolloverStrategy = rolloverStrategy;
         this.patternProcessor = new PatternProcessor(pattern);
         this.patternProcessor.setPrevFileTime(time);
+        this.fileName = fileName;
+        this.fileExtension = FileExtension.lookupForFile(pattern);
     }
 
     /**
@@ -100,6 +104,8 @@ public class RollingFileManager extends FileManager {
         this.rolloverStrategy = rolloverStrategy;
         this.patternProcessor = new PatternProcessor(pattern);
         this.patternProcessor.setPrevFileTime(time);
+        this.fileName = fileName;
+        this.fileExtension = FileExtension.lookupForFile(pattern);
     }
 
     public void initialize() {
@@ -133,11 +139,27 @@ public class RollingFileManager extends FileManager {
             final boolean bufferedIO, final TriggeringPolicy policy, final RolloverStrategy strategy,
             final String advertiseURI, final Layout<? extends Serializable> layout, final int bufferSize,
             final boolean immediateFlush, final boolean createOnDemand, final Configuration configuration) {
-
-        return (RollingFileManager) getManager(fileName, new FactoryData(pattern, append,
+        String name = fileName == null ? pattern : fileName;
+        return (RollingFileManager) getManager(name, new FactoryData(fileName, pattern, append,
             bufferedIO, policy, strategy, advertiseURI, layout, bufferSize, immediateFlush, createOnDemand, configuration), factory);
     }
 
+    /**
+     * Returns the name of the File being managed.
+     * @return The name of the File being managed.
+     */
+    @Override
+    public String getFileName() {
+        if (rolloverStrategy instanceof DirectFileRolloverStrategy) {
+            fileName = ((DirectFileRolloverStrategy) rolloverStrategy).getCurrentFileName(this);
+        }
+        return fileName;
+    }
+
+    public FileExtension getFileExtension() {
+        return fileExtension;
+    }
+
     // override to make visible for unit tests
     @Override
     protected synchronized void write(final byte[] bytes, final int offset, final int length,
@@ -198,6 +220,9 @@ public class RollingFileManager extends FileManager {
     }
 
     public synchronized void rollover() {
+        if (!hasOutputStream()) {
+            return;
+        }
         if (rollover(rolloverStrategy)) {
             try {
                 size = 0;
@@ -210,7 +235,7 @@ public class RollingFileManager extends FileManager {
     }
 
     protected void createFileAfterRollover() throws IOException  {
-        setOutputStream(new FileOutputStream(getFileName(), isAppend()));
+        setOutputStream(createOutputStream());
     }
 
     /**
@@ -277,7 +302,7 @@ public class RollingFileManager extends FileManager {
             return false;
         }
 
-        boolean success = false;
+        boolean success = true;
         Future<?> future = null;
 
         try {
@@ -290,6 +315,7 @@ public class RollingFileManager extends FileManager {
                     try {
                         success = descriptor.getSynchronous().execute();
                     } catch (final Exception ex) {
+                        success = false;
                         logError("Caught error in synchronous task", ex);
                     }
                 }
@@ -383,6 +409,7 @@ public class RollingFileManager extends FileManager {
      * Factory data.
      */
     private static class FactoryData extends ConfigurationFactoryData {
+        private final String fileName;
         private final String pattern;
         private final boolean append;
         private final boolean bufferedIO;
@@ -406,11 +433,12 @@ public class RollingFileManager extends FileManager {
          * @param createOnDemand true if you want to lazy-create the file (a.k.a. on-demand.)
          * @param configuration The configuration
          */
-        public FactoryData(final String pattern, final boolean append, final boolean bufferedIO,
+        public FactoryData(final String fileName, final String pattern, final boolean append, final boolean bufferedIO,
                 final TriggeringPolicy policy, final RolloverStrategy strategy, final String advertiseURI,
                 final Layout<? extends Serializable> layout, final int bufferSize, final boolean immediateFlush,
                 final boolean createOnDemand, final Configuration configuration) {
             super(configuration);
+            this.fileName = fileName;
             this.pattern = pattern;
             this.append = append;
             this.bufferedIO = bufferedIO;
@@ -479,29 +507,37 @@ public class RollingFileManager extends FileManager {
          */
         @Override
         public RollingFileManager createManager(final String name, final FactoryData data) {
-            final File file = new File(name);
-            final File parent = file.getParentFile();
-            if (null != parent && !parent.exists()) {
-                parent.mkdirs();
-            }
-            // LOG4J2-1140: check writeHeader before creating the file
-            final boolean writeHeader = !data.append || !file.exists();
-            try {
-                final boolean created = data.createOnDemand ? false : file.createNewFile();
-                LOGGER.trace("New file '{}' created = {}", name, created);
-            } catch (final IOException ioe) {
-                LOGGER.error("Unable to create file " + name, ioe);
-                return null;
+            long size = 0;
+            boolean writeHeader = !data.append;
+            File file = null;
+            if (data.fileName != null) {
+                file = new File(data.fileName);
+                final File parent = file.getParentFile();
+                if (null != parent && !parent.exists()) {
+                    parent.mkdirs();
+                }
+                // LOG4J2-1140: check writeHeader before creating the file
+                writeHeader = !data.append || !file.exists();
+
+                try {
+                    final boolean created = data.createOnDemand ? false : file.createNewFile();
+                    LOGGER.trace("New file '{}' created = {}", name, created);
+                } catch (final IOException ioe) {
+                    LOGGER.error("Unable to create file " + name, ioe);
+                    return null;
+                }
+                size = data.append ? file.length() : 0;
             }
-            final long size = data.append ? file.length() : 0;
 
             try {
                 final int actualSize = data.bufferedIO ? data.bufferSize : Constants.ENCODER_BYTE_BUFFER_SIZE;
                 final ByteBuffer buffer = ByteBuffer.wrap(new byte[actualSize]);
-                final OutputStream os = data.createOnDemand ? null : new FileOutputStream(name, data.append);
-                final long time = data.createOnDemand? System.currentTimeMillis() : file.lastModified(); // LOG4J2-531 create file first so time has valid value
+                final OutputStream os = data.createOnDemand  || data.fileName == null ? null :
+                        new FileOutputStream(data.fileName, data.append);
+                final long time = data.createOnDemand || file == null ?
+                        System.currentTimeMillis() : file.lastModified(); // LOG4J2-531 create file first so time has valid value
 
-                return new RollingFileManager(data.getLoggerContext(), name, data.pattern, os,
+                return new RollingFileManager(data.getLoggerContext(), data.fileName, data.pattern, os,
                         data.append, data.createOnDemand, size, time, data.policy, data.strategy, data.advertiseURI,
                         data.layout, writeHeader, buffer);
             } catch (final IOException ex) {

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/EligibleFilesTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/EligibleFilesTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/EligibleFilesTest.java
new file mode 100644
index 0000000..1f99ef5
--- /dev/null
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/EligibleFilesTest.java
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
+package org.apache.logging.log4j.core.appender.rolling;
+
+import java.nio.file.Path;
+import java.util.Map;
+
+import org.junit.Test;
+
+import static org.junit.Assert.*;
+
+/**
+ * Test getEligibleFiles method.
+ */
+public class EligibleFilesTest {
+
+    @Test
+    public void runTest() throws Exception {
+        String path = "target/test-classes/rolloverPath/log4j.txt.20170112_09--1.gz";
+        TestRolloverStrategy strategy = new TestRolloverStrategy();
+        Map<Integer, Path> files = strategy.findFilesInPath(path);
+        assertTrue("No files found", files.size() > 0);
+        assertTrue("Incorrect number of files found. Should be 30, was " + files.size(), files.size() == 30);
+    }
+
+    private class TestRolloverStrategy extends AbstractRolloverStrategy {
+
+        @Override
+        public RolloverDescription rollover(RollingFileManager manager) throws SecurityException {
+            return null;
+        }
+
+        public Map<Integer, Path> findFilesInPath(String path) {
+            return getEligibleFiles(path);
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2DirectTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2DirectTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2DirectTest.java
new file mode 100644
index 0000000..b0c9b0a
--- /dev/null
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2DirectTest.java
@@ -0,0 +1,86 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
+package org.apache.logging.log4j.core.appender.rolling;
+
+import java.io.File;
+import java.security.SecureRandom;
+import java.util.Random;
+
+import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.junit.LoggerContextRule;
+import org.hamcrest.Matcher;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.RuleChain;
+import static org.apache.logging.log4j.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.hamcrest.FileMatchers.hasName;
+import static org.hamcrest.Matchers.endsWith;
+import static org.hamcrest.Matchers.hasItemInArray;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+/**
+ *
+ */
+public class RollingAppenderCronEvery2DirectTest {
+
+    private static final String CONFIG = "log4j-rolling-cron-every2-direct.xml";
+    private static final String DIR = "target/rolling-cron-every2Direct";
+    private static final int LOOP_COUNT = 100;
+
+    private final LoggerContextRule loggerContextRule = LoggerContextRule.createShutdownTimeoutLoggerContextRule(CONFIG);
+
+    @Rule
+    public RuleChain chain = loggerContextRule.withCleanFoldersRule(DIR);
+
+    @Test
+    public void testAppender() throws Exception {
+        // TODO Is there a better way to test than putting the thread to sleep all over the place?
+        final Logger logger = loggerContextRule.getLogger();
+        long end = System.currentTimeMillis() + 5000;
+        Random rand = new SecureRandom();
+        rand.setSeed(end);
+        int count = 1;
+        do {
+            logger.debug("Log Message {}", count++);
+            Thread.sleep(10 * rand.nextInt(100));
+        } while (System.currentTimeMillis() < end);
+        final File dir = new File(DIR);
+        assertTrue("Directory not created", dir.exists() && dir.listFiles().length > 0);
+
+        final int MAX_TRIES = 20;
+        final Matcher<File[]> hasGzippedFile = hasItemInArray(that(hasName(that(endsWith(".gz")))));
+        boolean succeeded = false;
+        for (int i = 0; i < MAX_TRIES; i++) {
+            final File[] files = dir.listFiles();
+            if (hasGzippedFile.matches(files)) {
+                succeeded = true;
+                break;
+            }
+            logger.debug("Sleeping #" + i);
+            Thread.sleep(100); // Allow time for rollover to complete
+        }
+        if (!succeeded) {
+            final File[] files = dir.listFiles();
+            for (final File dirFile : files) {
+                logger.error("Found file: " + dirFile.getPath());
+            }
+            fail("No compressed files found");
+        }
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTest.java
new file mode 100644
index 0000000..b2c3606
--- /dev/null
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTest.java
@@ -0,0 +1,66 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
+package org.apache.logging.log4j.core.appender.rolling;
+
+import java.io.File;
+
+import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.junit.LoggerContextRule;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.RuleChain;
+import static org.apache.logging.log4j.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.hamcrest.FileMatchers.hasName;
+import static org.hamcrest.Matchers.endsWith;
+import static org.hamcrest.Matchers.hasItemInArray;
+import static org.junit.Assert.*;
+
+/**
+ *
+ */
+public class RollingAppenderDirectWriteTest {
+
+    private static final String CONFIG = "log4j-rolling-direct.xml";
+
+    private static final String DIR = "target/rolling-direct";
+
+    public static LoggerContextRule loggerContextRule = LoggerContextRule.createShutdownTimeoutLoggerContextRule(CONFIG);
+
+    @Rule
+    public RuleChain chain = loggerContextRule.withCleanFoldersRule(DIR);
+
+    private Logger logger;
+
+    @Before
+    public void setUp() throws Exception {
+        this.logger = loggerContextRule.getLogger(RollingAppenderDirectWriteTest.class.getName());
+    }
+
+    @Test
+    public void testAppender() throws Exception {
+        for (int i=0; i < 100; ++i) {
+            logger.debug("This is test message number " + i);
+        }
+        Thread.sleep(50);
+        final File dir = new File(DIR);
+        assertTrue("Directory not created", dir.exists() && dir.listFiles().length > 0);
+        final File[] files = dir.listFiles();
+        assertNotNull(files);
+        assertThat(files, hasItemInArray(that(hasName(that(endsWith(".gz"))))));
+    }
+}

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java
index cb3bc98..70b2653 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java
@@ -134,9 +134,8 @@ public class RollingAppenderSizeTest {
         assertNotNull(files);
         assertThat(files, hasItemInArray(that(hasName(that(endsWith(fileExtension))))));
 
-        final DefaultRolloverStrategy.FileExtensions ext = DefaultRolloverStrategy.FileExtensions.lookup(fileExtension);
-        if (ext == null || DefaultRolloverStrategy.FileExtensions.ZIP == ext
-                || DefaultRolloverStrategy.FileExtensions.PACK200 == ext) {
+        final FileExtension ext = FileExtension.lookup(fileExtension);
+        if (ext == null || FileExtension.ZIP == ext || FileExtension.PACK200 == ext) {
             return; // Apache Commons Compress cannot deflate zip? TODO test decompressing these formats
         }
         // Stop the context to make sure all files are compressed and closed. Trying to remedy failures in CI builds.

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeDirectTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeDirectTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeDirectTest.java
new file mode 100644
index 0000000..b0ea9db
--- /dev/null
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeDirectTest.java
@@ -0,0 +1,67 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
+package org.apache.logging.log4j.core.appender.rolling;
+
+import java.io.File;
+
+import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.junit.LoggerContextRule;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.RuleChain;
+import static org.apache.logging.log4j.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.hamcrest.FileMatchers.hasName;
+import static org.hamcrest.Matchers.endsWith;
+import static org.hamcrest.Matchers.hasItemInArray;
+import static org.junit.Assert.*;
+
+/**
+ *
+ */
+public class RollingAppenderTimeAndSizeDirectTest {
+
+    private static final String CONFIG = "log4j-rolling3-direct.xml";
+
+    private static final String DIR = "target/rolling3Direct";
+
+    public static LoggerContextRule loggerContextRule = LoggerContextRule.createShutdownTimeoutLoggerContextRule(CONFIG);
+
+    @Rule
+    public RuleChain chain = loggerContextRule.withCleanFoldersRule(DIR);
+
+    private Logger logger;
+
+    @Before
+    public void setUp() throws Exception {
+        this.logger = loggerContextRule.getLogger(RollingAppenderTimeAndSizeDirectTest.class.getName());
+    }
+
+    @Test
+    public void testAppender() throws Exception {
+        for (int i=0; i < 100; ++i) {
+            logger.debug("This is test message number " + i);
+            Thread.sleep(10);
+        }
+        Thread.sleep(50);
+        final File dir = new File(DIR);
+        assertTrue("Directory not created", dir.exists() && dir.listFiles().length > 0);
+        final File[] files = dir.listFiles();
+        assertNotNull(files);
+        assertThat(files, hasItemInArray(that(hasName(that(endsWith(".gz"))))));
+    }
+}

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/log4j-rolling-cron-every2-direct.xml
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/log4j-rolling-cron-every2-direct.xml b/log4j-core/src/test/resources/log4j-rolling-cron-every2-direct.xml
new file mode 100644
index 0000000..31425c5
--- /dev/null
+++ b/log4j-core/src/test/resources/log4j-rolling-cron-every2-direct.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements.  See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<Configuration status="WARN" name="RollingCronTest" monitorInterval="1">
+  <Properties>
+    <Property name="LOG_DIR">target/rolling-cron-every2Direct</Property>
+  </Properties>
+  <Filters>
+    <ThresholdFilter level="debug"/>
+  </Filters>
+
+  <Appenders>
+    <Console name="STDOUT">
+      <PatternLayout pattern="%m%n"/>
+    </Console>
+    <RollingFile name="RollingFile" filePattern="${LOG_DIR}/test1-%d{MM-dd-yy-HH-mm-ss}.log.gz">
+      <PatternLayout>
+        <Pattern>%d %p %C{1.} [%t] %m%n</Pattern>
+      </PatternLayout>
+      <CronTriggeringPolicy schedule="0/2 * * * * ?"/>
+    </RollingFile>
+    <List name="List">
+      <Filters>
+        <ThresholdFilter level="error"/>
+      </Filters>
+    </List>
+  </Appenders>
+
+  <Loggers>
+    <Logger name="org.apache.logging.log4j.core.appender.rolling" level="debug" additivity="false">
+      <AppenderRef ref="RollingFile"/>
+    </Logger>
+
+    <Root level="error">
+      <AppenderRef ref="STDOUT"/>
+    </Root>
+  </Loggers>
+
+</Configuration>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/log4j-rolling-direct.xml
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/log4j-rolling-direct.xml b/log4j-core/src/test/resources/log4j-rolling-direct.xml
new file mode 100644
index 0000000..a16d86a
--- /dev/null
+++ b/log4j-core/src/test/resources/log4j-rolling-direct.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements.  See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<Configuration status="WARN" name="XMLConfigTest">
+  <Properties>
+    <Property name="logDir">target/rolling-direct</Property>
+  </Properties>
+  <ThresholdFilter level="debug"/>
+
+  <Appenders>
+    <Console name="STDOUT">
+      <PatternLayout pattern="%m%n"/>
+    </Console>
+    <RollingFile name="RollingFile" filePattern="${logDir}/test1-%d{MM-dd-yy-HH-mm}-%i.log.gz">
+      <PatternLayout>
+        <Pattern>%d %p %C{1.} [%t] %m%n</Pattern>
+      </PatternLayout>
+      <Policies>
+        <TimeBasedTriggeringPolicy />
+        <SizeBasedTriggeringPolicy size="500" />
+      </Policies>
+    </RollingFile>
+  </Appenders>
+
+  <Loggers>
+    <Logger name="org.apache.logging.log4j.core.appender.rolling" level="debug" additivity="false">
+      <AppenderRef ref="RollingFile"/>
+    </Logger>>
+
+    <Root level="error">
+      <AppenderRef ref="STDOUT"/>
+    </Root>
+  </Loggers>
+
+</Configuration>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/log4j-rolling3-direct.xml
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/log4j-rolling3-direct.xml b/log4j-core/src/test/resources/log4j-rolling3-direct.xml
new file mode 100644
index 0000000..4595eff
--- /dev/null
+++ b/log4j-core/src/test/resources/log4j-rolling3-direct.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements.  See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<Configuration status="WARN" name="XMLConfigTest">
+  <Properties>
+    <Property name="LOG_DIR">target/rolling3Direct</Property>
+  </Properties>
+  <ThresholdFilter level="debug"/>
+
+  <Appenders>
+    <Console name="STDOUT">
+      <PatternLayout pattern="%m%n"/>
+    </Console>
+    <RollingFile name="RollingFile" filePattern="${LOG_DIR}/test1-%d{MM-dd-yy-HH-mm-ss}-%i.log.gz">
+      <PatternLayout>
+        <Pattern>%d %p %C{1.} [%t] %m%n</Pattern>
+      </PatternLayout>
+      <Policies>
+        <TimeBasedTriggeringPolicy />
+        <SizeBasedTriggeringPolicy size="500" />
+      </Policies>
+      <DirectWriteRolloverStrategy maxFiles="10"/>
+    </RollingFile>
+    <List name="List">
+      <ThresholdFilter level="error"/>
+    </List>
+  </Appenders>
+
+  <Loggers>
+    <Logger name="org.apache.logging.log4j.core.appender.rolling" level="debug" additivity="false">
+      <AppenderRef ref="RollingFile"/>
+    </Logger>>
+
+    <Root level="error">
+      <AppenderRef ref="STDOUT"/>
+    </Root>
+  </Loggers>
+
+</Configuration>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_00-1.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_00-1.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_00-1.gz
new file mode 100644
index 0000000..9273874
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_00-1.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_00-2.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_00-2.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_00-2.gz
new file mode 100644
index 0000000..605ce25
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_00-2.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_01-1.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_01-1.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_01-1.gz
new file mode 100644
index 0000000..bd3303e
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_01-1.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-1.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-1.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-1.gz
new file mode 100644
index 0000000..411c7c6
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-1.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-2.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-2.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-2.gz
new file mode 100644
index 0000000..ac35e3b
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-2.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-3.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-3.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-3.gz
new file mode 100644
index 0000000..4ebd274
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-3.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-4.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-4.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-4.gz
new file mode 100644
index 0000000..ddd4f28
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-4.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-5.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-5.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-5.gz
new file mode 100644
index 0000000..a69b1ab
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_02-5.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-1.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-1.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-1.gz
new file mode 100644
index 0000000..8eded4e
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-1.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-2.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-2.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-2.gz
new file mode 100644
index 0000000..9df313c
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-2.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-3.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-3.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-3.gz
new file mode 100644
index 0000000..6e4deb2
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-3.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-4.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-4.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-4.gz
new file mode 100644
index 0000000..eb38d1a
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-4.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-5.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-5.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-5.gz
new file mode 100644
index 0000000..eb33a0c
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_03-5.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-1.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-1.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-1.gz
new file mode 100644
index 0000000..f612cd6
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-1.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-2.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-2.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-2.gz
new file mode 100644
index 0000000..a0c9c7a
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-2.gz differ

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/acd8a4d6/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-3.gz
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-3.gz b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-3.gz
new file mode 100644
index 0000000..5ac0a24
Binary files /dev/null and b/log4j-core/src/test/resources/rolloverPath/log4j.txt.20170112_04-3.gz differ