please include function appendToFile. static void rotateLogFile(File f) { lock appendToFile_lock; int n = 1; File p; while ((p = newFile(f.getParent(), f + ".part" + n + ".gz")).exists()) ++n; gzipFile(f, p); assertTrue(f.delete()); }