Fix log compression

Any uncaught exception was silently causing subsequent executions to be
suppressed.

Catch and log any exceptions so root cause could be identified and
subsequent execution are not suppressed.

Change-Id: Ide998eb1edf583b483b3ce4f06c5b3a5dd1288d8
diff --git a/gerrit-pgm/src/main/java/com/google/gerrit/pgm/util/LogFileCompressor.java b/gerrit-pgm/src/main/java/com/google/gerrit/pgm/util/LogFileCompressor.java
index 3b910bb..666d03c 100644
--- a/gerrit-pgm/src/main/java/com/google/gerrit/pgm/util/LogFileCompressor.java
+++ b/gerrit-pgm/src/main/java/com/google/gerrit/pgm/util/LogFileCompressor.java
@@ -93,17 +93,21 @@
 
   @Override
   public void run() {
-    if (!Files.isDirectory(logs_dir)) {
-      return;
-    }
-    try (DirectoryStream<Path> list = Files.newDirectoryStream(logs_dir)) {
-      for (Path entry : list) {
-        if (!isLive(entry) && !isCompressed(entry) && isLogFile(entry)) {
-          compress(entry);
-        }
+    try {
+      if (!Files.isDirectory(logs_dir)) {
+        return;
       }
-    } catch (IOException e) {
-      log.error("Error listing logs to compress in " + logs_dir, e);
+      try (DirectoryStream<Path> list = Files.newDirectoryStream(logs_dir)) {
+        for (Path entry : list) {
+          if (!isLive(entry) && !isCompressed(entry) && isLogFile(entry)) {
+            compress(entry);
+          }
+        }
+      } catch (IOException e) {
+        log.error("Error listing logs to compress in " + logs_dir, e);
+      }
+    } catch (Exception e) {
+      log.error("Failed to compress log files: " + e.getMessage(), e);
     }
   }