diff --git a/java/Main.java b/java/Main.java
index 0eca665..f26b6df 100644
--- a/java/Main.java
+++ b/java/Main.java
@@ -13,6 +13,8 @@
 // limitations under the License.
 
 public final class Main {
+  private static final String FLOGGER_BACKEND_PROPERTY = "flogger.backend_factory";
+
   // We don't do any real work here because we need to import
   // the archive lookup code and we cannot import a class in
   // the default package. So this is just a tiny springboard
@@ -21,6 +23,7 @@
 
   public static void main(String[] argv) throws Exception {
     if (onSupportedJavaVersion()) {
+      configureFloggerBackend();
       com.google.gerrit.launcher.GerritLauncher.main(argv);
 
     } else {
@@ -38,6 +41,18 @@
     return false;
   }
 
+  private static void configureFloggerBackend() {
+    if (System.getProperty(FLOGGER_BACKEND_PROPERTY) != null) {
+      // Flogger backend is already configured
+      return;
+    }
+
+    // Configure log4j backend
+    System.setProperty(
+        FLOGGER_BACKEND_PROPERTY,
+        "com.google.common.flogger.backend.log4j.Log4jBackendFactory#getInstance");
+  }
+
   private static double parse(String version) {
     if (version == null || version.length() == 0) {
       return 0.0;
