diff --git a/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLClient.java b/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLClient.java
index 97f9dad..a0186e7 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLClient.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLClient.java
@@ -189,7 +189,7 @@
     try {
       execute(format("DELETE FROM %s WHERE project = '%s'", TABLE_NAME, project));
     } catch (SQLException e) {
-      log.warn("Cannot remove project " + project + " events from database", e);
+      log.warn("Cannot remove project {} events from database", project, e);
     }
   }
 
diff --git a/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLStore.java b/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLStore.java
index d9445b5..4f3651e 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLStore.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLStore.java
@@ -122,12 +122,11 @@
         }
       } catch (NoSuchProjectException e) {
         log.warn(
-            "Database contains a non-existing project, "
-                + projectName
-                + ", removing project from database");
+            "Database contains a non-existing project, {}; removing project from database",
+            projectName);
         eventsDb.removeProjectEvents(projectName);
       } catch (IOException e) {
-        log.warn("Cannot get project visibility info for " + projectName + " from cache", e);
+        log.warn("Cannot get project visibility info for {} from cache", projectName, e);
       }
     }
     return sortedEventsFromEntries(entries);
@@ -160,14 +159,14 @@
       try {
         getEventsDb().storeEvent(event);
       } catch (SQLException e) {
-        log.warn("Cannot store ChangeEvent for: " + projectName.get(), e);
+        log.warn("Cannot store ChangeEvent for: {}", projectName.get(), e);
         if (e.getCause() instanceof ConnectException
             || e.getMessage().contains("terminating connection")) {
           done = false;
           try {
             retryIfAllowed(failedConnections);
           } catch (InterruptedException e1) {
-            log.warn("Cannot store ChangeEvent for: " + projectName.get() + ": Interrupted");
+            log.warn("Cannot store ChangeEvent for {}: Interrupted", projectName.get());
             Thread.currentThread().interrupt();
             return;
           }
@@ -182,7 +181,7 @@
       log.info("Retrying store event");
       Thread.sleep(waitTime);
     } else {
-      log.error("Failed to store event " + maxTries + " times");
+      log.error("Failed to store event {} times", maxTries);
       setOnline(false);
     }
   }
