This is an automated email from the ASF dual-hosted git repository.

vishesh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/main by this push:
     new 13f805fbf3b Log4j2 refactor cloud api module (#8728)
13f805fbf3b is described below

commit 13f805fbf3bbd669f7f08d5738e2d88a1c7719ef
Author: Klaus de Freitas Dornsbach <[email protected]>
AuthorDate: Fri Dec 19 05:45:56 2025 -0300

    Log4j2 refactor cloud api module (#8728)
---
 .../com/cloud/agent/api/storage/OVFHelper.java     | 51 ++++++++--------------
 .../com/cloud/agent/api/storage/OVFParser.java     |  4 +-
 .../java/org/apache/cloudstack/acl/RoleType.java   |  4 +-
 .../java/org/apache/cloudstack/api/BaseCmd.java    |  2 +-
 .../command/admin/autoscale/DeleteCounterCmd.java  |  2 +-
 .../admin/backup/UpdateBackupOfferingCmd.java      |  2 +-
 ...UploadTemplateDirectDownloadCertificateCmd.java |  2 +-
 .../api/command/admin/host/UpdateHostCmd.java      |  2 +-
 .../network/DeleteManagementNetworkIpRangeCmd.java |  2 +-
 .../network/DeleteStorageNetworkIpRangeCmd.java    |  2 +-
 .../network/ListStorageNetworkIpRangeCmd.java      |  2 +-
 .../UpdatePodManagementNetworkIpRangeCmd.java      |  2 +-
 .../command/admin/vlan/CreateVlanIpRangeCmd.java   |  2 +-
 .../admin/vm/ImportUnmanagedInstanceCmd.java       | 12 ++---
 .../vm/MigrateVirtualMachineWithVolumeCmd.java     |  2 +-
 .../command/admin/vpc/CreateVPCOfferingCmd.java    |  6 +--
 .../user/autoscale/DeleteAutoScalePolicyCmd.java   |  2 +-
 .../user/autoscale/DeleteAutoScaleVmGroupCmd.java  |  2 +-
 .../autoscale/DeleteAutoScaleVmProfileCmd.java     |  2 +-
 .../command/user/autoscale/DeleteConditionCmd.java |  2 +-
 .../api/command/user/backup/ListBackupsCmd.java    |  2 +-
 .../user/firewall/CreateEgressFirewallRuleCmd.java |  7 +--
 .../user/firewall/CreateFirewallRuleCmd.java       |  2 +-
 .../ListLoadBalancerRuleInstancesCmd.java          |  4 +-
 .../user/nat/CreateIpForwardingRuleCmd.java        |  2 +-
 .../user/network/CreateNetworkACLListCmd.java      |  2 +-
 .../routing/CreateRoutingFirewallRuleCmd.java      |  2 +-
 .../snapshot/CreateSnapshotFromVMSnapshotCmd.java  |  2 +-
 .../command/user/template/CreateTemplateCmd.java   | 10 ++---
 .../api/command/user/vm/BaseDeployVMCmd.java       |  4 +-
 .../api/command/user/vm/CreateVMFromBackupCmd.java |  2 +-
 .../api/command/user/vm/DeployVMCmd.java           |  4 +-
 .../api/command/user/vm/ResetVMPasswordCmd.java    |  4 +-
 .../api/command/user/vpc/CreateStaticRouteCmd.java |  2 +-
 .../command/user/vpn/CreateRemoteAccessVpnCmd.java |  2 +-
 .../command/user/vpn/CreateVpnConnectionCmd.java   |  2 +-
 .../org/apache/cloudstack/context/CallContext.java | 12 ++---
 .../org/apache/cloudstack/context/LogContext.java  |  8 +---
 38 files changed, 70 insertions(+), 110 deletions(-)

diff --git a/api/src/main/java/com/cloud/agent/api/storage/OVFHelper.java 
b/api/src/main/java/com/cloud/agent/api/storage/OVFHelper.java
index 6396e3deb72..773c70773d1 100644
--- a/api/src/main/java/com/cloud/agent/api/storage/OVFHelper.java
+++ b/api/src/main/java/com/cloud/agent/api/storage/OVFHelper.java
@@ -119,8 +119,7 @@ public class OVFHelper {
         boolean password = StringUtils.isNotBlank(passStr) && 
passStr.equalsIgnoreCase("true");
         String label = ovfParser.getChildNodeValue(node, "Label");
         String description = ovfParser.getChildNodeValue(node, "Description");
-        logger.debug("Creating OVF property index " + index + (category == 
null ? "" : " for category " + category)
-                + " with key = " + key);
+        logger.debug("Creating OVF property index {} {} with key = {}", index, 
(category == null ? "" : " for category " + category), key);
         return new OVFPropertyTO(key, type, value, qualifiers, 
userConfigurable,
                 label, description, password, index, category);
     }
@@ -152,7 +151,7 @@ public class OVFHelper {
                     if (child.getNodeName().equalsIgnoreCase("Category") ||
                             child.getNodeName().endsWith(":Category")) {
                         lastCategoryFound = child.getTextContent();
-                        logger.info("Category found " + lastCategoryFound);
+                        logger.info("Category found {}", lastCategoryFound);
                     } else if 
(child.getNodeName().equalsIgnoreCase("Property") ||
                             child.getNodeName().endsWith(":Property")) {
                         OVFPropertyTO prop = createOVFPropertyFromNode(child, 
propertyIndex, lastCategoryFound);
@@ -250,13 +249,13 @@ public class OVFHelper {
         int diskNumber = 0;
         for (OVFVirtualHardwareItemTO diskItem : diskHardwareItems) {
             if (StringUtils.isBlank(diskItem.getHostResource())) {
-                logger.error("Missing disk information for hardware item " + 
diskItem.getElementName() + " " + diskItem.getInstanceId());
+                logger.error("Missing disk information for hardware item {} 
{}", diskItem.getElementName(), diskItem.getInstanceId());
                 continue;
             }
             String diskId = 
extractDiskIdFromDiskHostResource(diskItem.getHostResource());
             OVFDisk diskDefinition = getDiskDefinitionFromDiskId(diskId, 
disks);
             if (diskDefinition == null) {
-                logger.error("Missing disk definition for disk ID " + diskId);
+                logger.error("Missing disk definition for disk ID {}", diskId);
             }
             OVFFile fileDefinition = 
getFileDefinitionFromDiskDefinition(diskDefinition._fileRef, files);
             DatadiskTO datadiskTO = generateDiskTO(fileDefinition, 
diskDefinition, ovfParentPath, diskNumber, diskItem);
@@ -278,7 +277,7 @@ public class OVFHelper {
         if (StringUtils.isNotBlank(path)) {
             File f = new File(path);
             if (!f.exists() || f.isDirectory()) {
-                logger.error("One of the attached disk or iso does not exists 
" + path);
+                logger.error("One of the attached disk or iso does not exists 
{}", path);
                 throw new InternalErrorException("One of the attached disk or 
iso as stated on OVF does not exists " + path);
             }
         }
@@ -334,9 +333,7 @@ public class OVFHelper {
             od._controller = getControllerType(items, od._diskId);
             vd.add(od);
         }
-        if (logger.isTraceEnabled()) {
-            logger.trace(String.format("found %d disk definitions",vd.size()));
-        }
+        logger.trace("Found {} disk definitions", vd.size());
         return vd;
     }
 
@@ -366,9 +363,7 @@ public class OVFHelper {
                 vf.add(of);
             }
         }
-        if (logger.isTraceEnabled()) {
-            logger.trace(String.format("found %d file definitions in 
%s",vf.size(), ovfFile.getPath()));
-        }
+        logger.trace("Found {} file definitions in {}", vf.size(), 
ovfFile.getPath());
         return vf;
     }
 
@@ -506,7 +501,7 @@ public class OVFHelper {
             outfile.write(writer.toString());
             outfile.close();
         } catch (IOException | TransformerException e) {
-            logger.info("Unexpected exception caught while rewriting OVF:" + 
e.getMessage(), e);
+            logger.info("Unexpected exception caught while rewriting OVF: {}", 
e.getMessage(), e);
             throw new CloudRuntimeException(e);
         }
     }
@@ -522,9 +517,7 @@ public class OVFHelper {
 
     public List<OVFNetworkTO> getNetPrerequisitesFromDocument(Document doc) 
throws InternalErrorException {
         if (doc == null) {
-            if (logger.isTraceEnabled()) {
-                logger.trace("no document to parse; returning no prerequisite 
networks");
-            }
+            logger.trace("No document to parse; returning no prerequisite 
networks");
             return Collections.emptyList();
         }
 
@@ -540,9 +533,7 @@ public class OVFHelper {
     private void matchNicsToNets(Map<String, OVFNetworkTO> nets, Node 
systemElement) {
         final DocumentTraversal traversal = (DocumentTraversal) systemElement;
         final NodeIterator iterator = 
traversal.createNodeIterator(systemElement, NodeFilter.SHOW_ELEMENT, null, 
true);
-        if (logger.isTraceEnabled()) {
-            logger.trace(String.format("starting out with %d 
network-prerequisites, parsing hardware",nets.size()));
-        }
+        logger.trace("Starting out with {} network-prerequisites, parsing 
hardware", nets.size());
         int nicCount = 0;
         for (Node n = iterator.nextNode(); n != null; n = iterator.nextNode()) 
{
             final Element e = (Element) n;
@@ -550,9 +541,7 @@ public class OVFHelper {
                 nicCount++;
                 String name = e.getTextContent(); // should be in our nets
                 if(nets.get(name) == null) {
-                    if(logger.isInfoEnabled()) {
-                        logger.info(String.format("found a nic definition 
without a network definition byname %s, adding it to the list.", name));
-                    }
+                    logger.info("Found a nic definition without a network 
definition by name {}, adding it to the list.", name);
                     nets.put(name, new OVFNetworkTO());
                 }
                 OVFNetworkTO thisNet = nets.get(name);
@@ -561,9 +550,7 @@ public class OVFHelper {
                 }
             }
         }
-        if (logger.isTraceEnabled()) {
-            logger.trace(String.format("ending up with %d 
network-prerequisites, parsed %d nics", nets.size(), nicCount));
-        }
+        logger.trace("Ending up with {} network-prerequisites, parsed {} 
nics", nets.size(), nicCount);
     }
 
     /**
@@ -585,7 +572,7 @@ public class OVFHelper {
             int addressOnParent = Integer.parseInt(addressOnParentStr);
             nic.setAddressOnParent(addressOnParent);
         } catch (NumberFormatException e) {
-            logger.warn("Encountered element of type \"AddressOnParent\", that 
could not be parse to an integer number: " + addressOnParentStr);
+            logger.warn("Encountered element of type \"AddressOnParent\", that 
could not be parse to an integer number: {}", addressOnParentStr);
         }
 
         boolean automaticAllocation = 
StringUtils.isNotBlank(automaticAllocationStr) && 
Boolean.parseBoolean(automaticAllocationStr);
@@ -597,7 +584,7 @@ public class OVFHelper {
             int instanceId = Integer.parseInt(instanceIdStr);
             nic.setInstanceID(instanceId);
         } catch (NumberFormatException e) {
-            logger.warn("Encountered element of type \"InstanceID\", that 
could not be parse to an integer number: " + instanceIdStr);
+            logger.warn("Encountered element of type \"InstanceID\", that 
could not be parse to an integer number: {}", instanceIdStr);
         }
 
         nic.setResourceSubType(resourceSubType);
@@ -630,9 +617,7 @@ public class OVFHelper {
 
             nets.put(networkName,network);
         }
-        if (logger.isTraceEnabled()) {
-            logger.trace(String.format("found %d networks in template", 
nets.size()));
-        }
+        logger.trace("Found {} networks in template", nets.size());
         return nets;
     }
 
@@ -771,7 +756,7 @@ public class OVFHelper {
             try {
                 return Long.parseLong(value);
             } catch (NumberFormatException e) {
-                logger.debug("Could not parse the value: " + value + ", 
ignoring it");
+                logger.debug("Could not parse the value: {}, ignoring it", 
value);
             }
         }
         return null;
@@ -782,7 +767,7 @@ public class OVFHelper {
             try {
                 return Integer.parseInt(value);
             } catch (NumberFormatException e) {
-                logger.debug("Could not parse the value: " + value + ", 
ignoring it");
+                logger.debug("Could not parse the value: {}, ignoring it", 
value);
             }
         }
         return null;
@@ -820,7 +805,7 @@ public class OVFHelper {
                 try {
                     compressedLicense = compressOVFEula(eulaLicense);
                 } catch (IOException e) {
-                    logger.error("Could not compress the license for info " + 
eulaInfo);
+                    logger.error("Could not compress the license for info {}", 
eulaInfo);
                     continue;
                 }
                 OVFEulaSectionTO eula = new OVFEulaSectionTO(eulaInfo, 
compressedLicense, eulaIndex);
diff --git a/api/src/main/java/com/cloud/agent/api/storage/OVFParser.java 
b/api/src/main/java/com/cloud/agent/api/storage/OVFParser.java
index 38f478d63cf..316ab4ea87b 100644
--- a/api/src/main/java/com/cloud/agent/api/storage/OVFParser.java
+++ b/api/src/main/java/com/cloud/agent/api/storage/OVFParser.java
@@ -54,7 +54,7 @@ public class OVFParser {
             documentBuilderFactory.setNamespaceAware(true);
             documentBuilder = documentBuilderFactory.newDocumentBuilder();
         } catch (ParserConfigurationException e) {
-            logger.error("Cannot start the OVF parser: " + e.getMessage(), e);
+            logger.error("Cannot start the OVF parser: {}", e.getMessage(), e);
         }
     }
 
@@ -70,7 +70,7 @@ public class OVFParser {
         try {
             return documentBuilder.parse(new File(ovfFilePath));
         } catch (SAXException | IOException e) {
-            logger.error("Error parsing " + ovfFilePath + " " + 
e.getMessage(), e);
+            logger.error("Error parsing {} {}", ovfFilePath, e.getMessage(), 
e);
             return null;
         }
     }
diff --git a/api/src/main/java/org/apache/cloudstack/acl/RoleType.java 
b/api/src/main/java/org/apache/cloudstack/acl/RoleType.java
index 46e4f1bc510..24a1f66e229 100644
--- a/api/src/main/java/org/apache/cloudstack/acl/RoleType.java
+++ b/api/src/main/java/org/apache/cloudstack/acl/RoleType.java
@@ -132,10 +132,10 @@ public enum RoleType {
      * */
     public static Account.Type getAccountTypeByRole(final Role role, final 
Account.Type defautAccountType) {
         if (role != null) {
-            LOGGER.debug(String.format("Role [%s] is not null; therefore, we 
use its account type [%s].", role, defautAccountType));
+            LOGGER.debug("Role [{}] is not null; therefore, we use its account 
type [{}].", role, defautAccountType);
             return role.getRoleType().getAccountType();
         }
-        LOGGER.debug(String.format("Role is null; therefore, we use the 
default account type [%s] value.", defautAccountType));
+        LOGGER.debug("Role is null; therefore, we use the default account type 
[{}] value.", defautAccountType);
         return defautAccountType;
     }
 }
diff --git a/api/src/main/java/org/apache/cloudstack/api/BaseCmd.java 
b/api/src/main/java/org/apache/cloudstack/api/BaseCmd.java
index 8f47d51b19d..a4de301cc99 100644
--- a/api/src/main/java/org/apache/cloudstack/api/BaseCmd.java
+++ b/api/src/main/java/org/apache/cloudstack/api/BaseCmd.java
@@ -382,7 +382,7 @@ public abstract class BaseCmd {
             if (roleIsAllowed) {
                 validFields.add(field);
             } else {
-                logger.debug("Ignoring parameter " + 
parameterAnnotation.name() + " as the caller is not authorized to pass it in");
+                logger.debug("Ignoring parameter {} as the caller is not 
authorized to pass it in", parameterAnnotation.name());
             }
         }
 
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/autoscale/DeleteCounterCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/autoscale/DeleteCounterCmd.java
index b7b2ce5cb70..944ec1c46fd 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/autoscale/DeleteCounterCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/autoscale/DeleteCounterCmd.java
@@ -61,7 +61,7 @@ public class DeleteCounterCmd extends BaseAsyncCmd {
             SuccessResponse response = new SuccessResponse(getCommandName());
             this.setResponseObject(response);
         } else {
-            logger.warn("Failed to delete counter with Id: " + getId());
+            logger.warn("Failed to delete counter with Id: {}", getId());
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed 
to delete counter.");
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/backup/UpdateBackupOfferingCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/backup/UpdateBackupOfferingCmd.java
index 9de06715ee7..a645b1e0c8d 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/backup/UpdateBackupOfferingCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/backup/UpdateBackupOfferingCmd.java
@@ -98,7 +98,7 @@ public class UpdateBackupOfferingCmd extends BaseCmd {
             this.setResponseObject(response);
         } catch (CloudRuntimeException e) {
             ApiErrorCode paramError = e instanceof 
InvalidParameterValueException ? ApiErrorCode.PARAM_ERROR : 
ApiErrorCode.INTERNAL_ERROR;
-            logger.error(String.format("Failed to update Backup Offering [id: 
%s] due to: [%s].", id, e.getMessage()), e);
+            logger.error("Failed to update Backup Offering [id: {}] due to: 
[{}].", id, e.getMessage(), e);
             throw new ServerApiException(paramError, e.getMessage());
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/direct/download/UploadTemplateDirectDownloadCertificateCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/direct/download/UploadTemplateDirectDownloadCertificateCmd.java
index c5c102be56d..8990eb2f5c8 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/direct/download/UploadTemplateDirectDownloadCertificateCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/direct/download/UploadTemplateDirectDownloadCertificateCmd.java
@@ -95,7 +95,7 @@ public class UploadTemplateDirectDownloadCertificateCmd 
extends BaseCmd {
         }
 
         try {
-            logger.debug("Uploading certificate " + name + " to agents for 
Direct Download");
+            logger.debug("Uploading certificate {} to agents for Direct 
Download", name);
             Pair<DirectDownloadCertificate, List<HostCertificateStatus>> 
uploadStatus =
                     
directDownloadManager.uploadCertificateToHosts(certificate, name, hypervisor, 
zoneId, hostId);
             DirectDownloadCertificate certificate = uploadStatus.first();
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/host/UpdateHostCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/host/UpdateHostCmd.java
index 86f002b9b7d..c6043d88806 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/host/UpdateHostCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/host/UpdateHostCmd.java
@@ -147,7 +147,7 @@ public class UpdateHostCmd extends BaseCmd {
             this.setResponseObject(hostResponse);
         } catch (Exception e) {
             Host host = _entityMgr.findById(Host.class, getId());
-            logger.debug("Failed to update host: {} with id {}", host, 
getId(), e);
+            logger.error("Failed to update {}", host, e);
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, 
String.format("Failed to update host: %s with id %d, %s", host, getId(), 
e.getMessage()));
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/network/DeleteManagementNetworkIpRangeCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/DeleteManagementNetworkIpRangeCmd.java
index 41cf5e518b3..5b50c90b396 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/network/DeleteManagementNetworkIpRangeCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/DeleteManagementNetworkIpRangeCmd.java
@@ -116,7 +116,7 @@ public class DeleteManagementNetworkIpRangeCmd extends 
BaseAsyncCmd {
             logger.warn("Exception: ", ex);
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, 
ex.getMessage());
         } catch (Exception e) {
-            logger.warn("Failed to delete management ip range from " + 
getStartIp() + " to " + getEndIp() + " of Pod: " + getPodId(), e);
+            logger.warn("Failed to delete management ip range from {} to {} of 
Pod: {}", getStartIp(), getEndIp(), getPodId(), e);
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, 
e.getMessage());
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/network/DeleteStorageNetworkIpRangeCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/DeleteStorageNetworkIpRangeCmd.java
index 454dfba92f2..ba5f8347983 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/network/DeleteStorageNetworkIpRangeCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/DeleteStorageNetworkIpRangeCmd.java
@@ -75,7 +75,7 @@ public class DeleteStorageNetworkIpRangeCmd extends 
BaseAsyncCmd {
             SuccessResponse response = new SuccessResponse(getCommandName());
             this.setResponseObject(response);
         } catch (Exception e) {
-            logger.warn("Failed to delete storage network ip range " + 
getId(), e);
+            logger.warn("Failed to delete storage network ip range {}", 
getId(), e);
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, 
e.getMessage());
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/network/ListStorageNetworkIpRangeCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/ListStorageNetworkIpRangeCmd.java
index 556162ca360..e225122aab3 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/network/ListStorageNetworkIpRangeCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/ListStorageNetworkIpRangeCmd.java
@@ -97,7 +97,7 @@ public class ListStorageNetworkIpRangeCmd extends BaseListCmd 
{
             response.setResponseName(getCommandName());
             this.setResponseObject(response);
         } catch (Exception e) {
-            logger.warn("Failed to list storage network ip range for rangeId=" 
+ getRangeId() + " podId=" + getPodId() + " zoneId=" + getZoneId());
+            logger.warn("Failed to list storage network ip range for 
rangeId={} podId={} zoneId={}", getRangeId(), getPodId(), getZoneId());
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, 
e.getMessage());
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/network/UpdatePodManagementNetworkIpRangeCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/UpdatePodManagementNetworkIpRangeCmd.java
index 6f90a070f0d..394d42a65a3 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/network/UpdatePodManagementNetworkIpRangeCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/UpdatePodManagementNetworkIpRangeCmd.java
@@ -139,7 +139,7 @@ public class UpdatePodManagementNetworkIpRangeCmd extends 
BaseAsyncCmd {
             logger.warn("Exception: ", ex);
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, 
ex.getMessage());
         } catch (Exception e) {
-            logger.warn("Failed to update pod management IP range " + 
getNewStartIP() + "-" + getNewEndIP() + " of Pod: " + getPodId(), e);
+            logger.warn("Failed to update pod management IP range {}-{} of 
Pod: {}", getNewStartIP(), getNewEndIP(), getPodId(), e);
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, 
e.getMessage());
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/vlan/CreateVlanIpRangeCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/vlan/CreateVlanIpRangeCmd.java
index 48a6ca620e0..8bb05ce9b3e 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/vlan/CreateVlanIpRangeCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/vlan/CreateVlanIpRangeCmd.java
@@ -238,7 +238,7 @@ public class CreateVlanIpRangeCmd extends BaseCmd {
             logger.warn("Exception: ", ex);
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, 
ex.getMessage());
         } catch (InsufficientCapacityException ex) {
-            logger.info(ex);
+            logger.error(ex);
             throw new 
ServerApiException(ApiErrorCode.INSUFFICIENT_CAPACITY_ERROR, ex.getMessage());
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/vm/ImportUnmanagedInstanceCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/vm/ImportUnmanagedInstanceCmd.java
index ae6ceff26c7..5fa898386fe 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/vm/ImportUnmanagedInstanceCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/vm/ImportUnmanagedInstanceCmd.java
@@ -201,9 +201,7 @@ public class ImportUnmanagedInstanceCmd extends 
BaseAsyncCmd {
             for (Map<String, String> entry : (Collection<Map<String, 
String>>)nicNetworkList.values()) {
                 String nic = entry.get(VmDetailConstants.NIC);
                 String networkUuid = entry.get(VmDetailConstants.NETWORK);
-                if (logger.isDebugEnabled()) {
-                    logger.debug(String.format("nic, '%s', goes on net, '%s'", 
nic, networkUuid));
-                }
+                logger.debug("Checking if NIC '{}' can be mapped on network 
'{}'", nic, networkUuid);
                 if (StringUtils.isAnyEmpty(nic, networkUuid) || 
_entityMgr.findByUuid(Network.class, networkUuid) == null) {
                     throw new 
InvalidParameterValueException(String.format("Network ID: %s for NIC ID: %s is 
invalid", networkUuid, nic));
                 }
@@ -219,9 +217,7 @@ public class ImportUnmanagedInstanceCmd extends 
BaseAsyncCmd {
             for (Map<String, String> entry : (Collection<Map<String, 
String>>)nicIpAddressList.values()) {
                 String nic = entry.get(VmDetailConstants.NIC);
                 String ipAddress = 
StringUtils.defaultIfEmpty(entry.get(VmDetailConstants.IP4_ADDRESS), null);
-                if (logger.isDebugEnabled()) {
-                    logger.debug(String.format("nic, '%s', gets ip, '%s'", 
nic, ipAddress));
-                }
+                logger.debug("Checking if IP address '{}' can be mapped to NIC 
'{}'", ipAddress, nic);
                 if (StringUtils.isEmpty(nic)) {
                     throw new 
InvalidParameterValueException(String.format("NIC ID: '%s' is invalid for IP 
address mapping", nic));
                 }
@@ -244,9 +240,7 @@ public class ImportUnmanagedInstanceCmd extends 
BaseAsyncCmd {
             for (Map<String, String> entry : (Collection<Map<String, 
String>>)dataDiskToDiskOfferingList.values()) {
                 String disk = entry.get(VmDetailConstants.DISK);
                 String offeringUuid = 
entry.get(VmDetailConstants.DISK_OFFERING);
-                if (logger.isTraceEnabled()) {
-                    logger.trace(String.format("disk, '%s', gets offering, 
'%s'", disk, offeringUuid));
-                }
+                logger.trace("Checking if offering '{}' can be used on disk 
'{}'", offeringUuid, disk);
                 if (StringUtils.isAnyEmpty(disk, offeringUuid) || 
_entityMgr.findByUuid(DiskOffering.class, offeringUuid) == null) {
                     throw new 
InvalidParameterValueException(String.format("Disk offering ID: %s for disk ID: 
%s is invalid", offeringUuid, disk));
                 }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/vm/MigrateVirtualMachineWithVolumeCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/vm/MigrateVirtualMachineWithVolumeCmd.java
index b736e860636..ede2aa217da 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/vm/MigrateVirtualMachineWithVolumeCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/vm/MigrateVirtualMachineWithVolumeCmd.java
@@ -155,7 +155,7 @@ public class MigrateVirtualMachineWithVolumeCmd extends 
BaseAsyncCmd {
         Host destinationHost = _resourceService.getHost(getHostId());
         // OfflineVmwareMigration: destination host would have to not be a 
required parameter for stopped VMs
         if (destinationHost == null) {
-            logger.error(String.format("Unable to find the host with ID 
[%s].", getHostId()));
+            logger.error("Unable to find the host with ID [{}].", getHostId());
             throw new InvalidParameterValueException("Unable to find the 
specified host to migrate the VM.");
         }
         return destinationHost;
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/vpc/CreateVPCOfferingCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/vpc/CreateVPCOfferingCmd.java
index 9ed7ced528e..398416db0b9 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/admin/vpc/CreateVPCOfferingCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/admin/vpc/CreateVPCOfferingCmd.java
@@ -224,10 +224,8 @@ public class CreateVPCOfferingCmd extends 
BaseAsyncCreateCmd {
             Iterator<? extends Map<String, String>> iter = 
servicesCollection.iterator();
             while (iter.hasNext()) {
                 Map<String, String> obj = iter.next();
-                if (logger.isTraceEnabled()) {
-                    logger.trace("service provider entry specified: " + obj);
-                }
-                HashMap<String, String> services = (HashMap<String, String>) 
obj;
+                logger.trace("Service provider entry specified: {}", obj);
+                HashMap<String, String> services = (HashMap<String, 
String>)obj;
                 String service = services.get("service");
                 String provider = services.get("provider");
                 List<String> providerList = null;
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScalePolicyCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScalePolicyCmd.java
index cee9460dbe6..b3fa1b94900 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScalePolicyCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScalePolicyCmd.java
@@ -91,7 +91,7 @@ public class DeleteAutoScalePolicyCmd extends BaseAsyncCmd {
             SuccessResponse response = new SuccessResponse(getCommandName());
             setResponseObject(response);
         } else {
-            logger.warn("Failed to delete autoscale policy " + getId());
+            logger.warn("Failed to delete autoscale policy {}", getId());
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed 
to delete AutoScale Policy");
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmGroupCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmGroupCmd.java
index 6bf2157533e..94aaf371c10 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmGroupCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmGroupCmd.java
@@ -101,7 +101,7 @@ public class DeleteAutoScaleVmGroupCmd extends BaseAsyncCmd 
{
             SuccessResponse response = new SuccessResponse(getCommandName());
             setResponseObject(response);
         } else {
-            logger.warn("Failed to delete autoscale vm group " + getId());
+            logger.warn("Failed to delete autoscale vm group {}", getId());
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed 
to delete autoscale vm group");
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmProfileCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmProfileCmd.java
index b90f6aa8ffa..fc6cbf63e4b 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmProfileCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmProfileCmd.java
@@ -90,7 +90,7 @@ public class DeleteAutoScaleVmProfileCmd extends BaseAsyncCmd 
{
             SuccessResponse response = new SuccessResponse(getCommandName());
             setResponseObject(response);
         } else {
-            logger.warn("Failed to delete autoscale vm profile " + getId());
+            logger.warn("Failed to delete autoscale vm profile {}", getId());
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed 
to delete autoscale vm profile");
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteConditionCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteConditionCmd.java
index 9590012e037..6b716d0e202 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteConditionCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/autoscale/DeleteConditionCmd.java
@@ -64,7 +64,7 @@ public class DeleteConditionCmd extends BaseAsyncCmd {
             SuccessResponse response = new SuccessResponse(getCommandName());
             setResponseObject(response);
         } else {
-            logger.warn("Failed to delete condition " + getId());
+            logger.warn("Failed to delete condition {}", getId());
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed 
to delete condition.");
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/backup/ListBackupsCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/backup/ListBackupsCmd.java
index 0c2b4f9b91e..d0e5ac8ef2f 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/backup/ListBackupsCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/backup/ListBackupsCmd.java
@@ -148,7 +148,7 @@ public class ListBackupsCmd extends 
BaseListProjectAndAccountResourcesCmd {
             Pair<List<Backup>, Integer> result = 
backupManager.listBackups(this);
             setupResponseBackupList(result.first(), result.second());
         } catch (Exception e) {
-            logger.debug("Exception while listing backups", e);
+            logger.error("Exception while listing backups", e);
             throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, 
e.getMessage());
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/firewall/CreateEgressFirewallRuleCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/firewall/CreateEgressFirewallRuleCmd.java
index 8cbbcea6a59..9504fc8240c 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/firewall/CreateEgressFirewallRuleCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/firewall/CreateEgressFirewallRuleCmd.java
@@ -255,11 +255,8 @@ public class CreateEgressFirewallRuleCmd extends 
BaseAsyncCreateCmd implements F
             }
         } catch (NetworkRuleConflictException ex) {
             String message = "Network rule conflict: ";
-            if (!logger.isTraceEnabled()) {
-                logger.info(message + ex.getMessage());
-            } else {
-                logger.trace(message, ex);
-            }
+            logger.error("{}{}", message, ex.getMessage());
+            logger.trace(message, ex);
             throw new 
ServerApiException(ApiErrorCode.NETWORK_RULE_CONFLICT_ERROR, ex.getMessage());
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/firewall/CreateFirewallRuleCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/firewall/CreateFirewallRuleCmd.java
index efccb5c09b0..2fedf61f5bb 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/firewall/CreateFirewallRuleCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/firewall/CreateFirewallRuleCmd.java
@@ -271,7 +271,7 @@ public class CreateFirewallRuleCmd extends 
BaseAsyncCreateCmd implements Firewal
                 setEntityUuid(result.getUuid());
             }
         } catch (NetworkRuleConflictException ex) {
-            logger.trace("Network Rule Conflict: ", ex);
+            logger.error("Network Rule Conflict: ", ex);
             throw new 
ServerApiException(ApiErrorCode.NETWORK_RULE_CONFLICT_ERROR, ex.getMessage(), 
ex);
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/loadbalancer/ListLoadBalancerRuleInstancesCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/loadbalancer/ListLoadBalancerRuleInstancesCmd.java
index 3bfc68a95ba..5457da515ad 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/loadbalancer/ListLoadBalancerRuleInstancesCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/loadbalancer/ListLoadBalancerRuleInstancesCmd.java
@@ -95,10 +95,10 @@ public class ListLoadBalancerRuleInstancesCmd extends 
BaseListCmd implements Use
     public void execute() {
         Pair<List<? extends UserVm>, List<String>> vmServiceMap =  
_lbService.listLoadBalancerInstances(this);
         List<? extends UserVm> result = vmServiceMap.first();
-        logger.debug(String.format("A total of [%s] user VMs were obtained 
when listing the load balancer instances: [%s].", result.size(), result));
+        logger.debug("A total of [{}] user VMs were obtained when listing the 
load balancer instances: [{}].", result.size(), result);
 
         List<String> serviceStates  = vmServiceMap.second();
-        logger.debug(String.format("A total of [%s] service states were 
obtained when listing the load balancer instances: [%s].", 
serviceStates.size(), serviceStates));
+        logger.debug("A total of [{}] service states were obtained when 
listing the load balancer instances: [{}].", serviceStates.size(), 
serviceStates);
 
         if (!isListLbVmip()) {
             ListResponse<UserVmResponse> response = new ListResponse<>();
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/nat/CreateIpForwardingRuleCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/nat/CreateIpForwardingRuleCmd.java
index e883a7a0e4d..1fe6a98a5ee 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/nat/CreateIpForwardingRuleCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/nat/CreateIpForwardingRuleCmd.java
@@ -148,7 +148,7 @@ public class CreateIpForwardingRuleCmd extends 
BaseAsyncCreateCmd implements Sta
             setEntityId(rule.getId());
             setEntityUuid(rule.getUuid());
         } catch (NetworkRuleConflictException e) {
-            logger.info("Unable to create static NAT rule due to ", e);
+            logger.error("Unable to create static NAT rule due to ", e);
             throw new 
ServerApiException(ApiErrorCode.NETWORK_RULE_CONFLICT_ERROR, e.getMessage());
         }
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/network/CreateNetworkACLListCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/network/CreateNetworkACLListCmd.java
index cd25a604e77..5e271e224ea 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/network/CreateNetworkACLListCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/network/CreateNetworkACLListCmd.java
@@ -128,7 +128,7 @@ public class CreateNetworkACLListCmd extends 
BaseAsyncCreateCmd {
         } else {
             account = CallContext.current().getCallingAccount();
             if (!Account.Type.ADMIN.equals(account.getType())) {
-                logger.warn(String.format("Only Root Admin can create global 
ACLs. Account [%s] cannot create any global ACL.", account));
+                logger.error("Only Root Admin can create global ACLs. {} 
cannot create any global ACL.", account);
                 throw new PermissionDeniedException("Only Root Admin can 
create global ACLs.");
             }
 
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/network/routing/CreateRoutingFirewallRuleCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/network/routing/CreateRoutingFirewallRuleCmd.java
index 7146d1ae1d1..ad52916c7a9 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/network/routing/CreateRoutingFirewallRuleCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/network/routing/CreateRoutingFirewallRuleCmd.java
@@ -250,7 +250,7 @@ public class CreateRoutingFirewallRuleCmd extends 
BaseAsyncCreateCmd {
             }
             ruleResponse.setResponseName(getCommandName());
         } catch (Exception ex) {
-            logger.error("Got exception when create Routing firewall rules: " 
+ ex);
+            logger.error("Got exception when create Routing firewall rules: ", 
ex);
         } finally {
             if (!success || rule == null) {
                 routedIpv4Manager.revokeRoutingFirewallRule(getEntityId());
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/snapshot/CreateSnapshotFromVMSnapshotCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/snapshot/CreateSnapshotFromVMSnapshotCmd.java
index c99373688e5..bdfd078f5bf 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/snapshot/CreateSnapshotFromVMSnapshotCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/snapshot/CreateSnapshotFromVMSnapshotCmd.java
@@ -165,7 +165,7 @@ public class CreateSnapshotFromVMSnapshotCmd extends 
BaseAsyncCreateCmd {
     @Override
     public void execute() {
         VMSnapshot vmSnapshot = 
_vmSnapshotService.getVMSnapshotById(getVMSnapshotId());
-        logger.info("CreateSnapshotFromVMSnapshotCmd with vm snapshot {} with 
id {} and snapshot [id: {}, uuid: {}]", vmSnapshot, getVMSnapshotId(), 
getEntityId(), getEntityUuid());
+        logger.info("CreateSnapshotFromVMSnapshotCmd with {} and snapshot [id: 
{}, uuid: {}]", vmSnapshot, getEntityId(), getEntityUuid());
         CallContext.current().setEventDetails("Vm Snapshot Id: " + 
vmSnapshot.getUuid());
         Snapshot snapshot = null;
         try {
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/template/CreateTemplateCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/template/CreateTemplateCmd.java
index 5f09ac6698d..ab24c15c9d8 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/template/CreateTemplateCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/template/CreateTemplateCmd.java
@@ -356,12 +356,10 @@ public class CreateTemplateCmd extends BaseAsyncCreateCmd 
implements UserCmd {
         try {
             accountIdToUse = _accountService.finalyzeAccountId(accountName, 
domainId, projectId, true);
         } catch (InvalidParameterValueException | PermissionDeniedException 
ex) {
-            if (logger.isDebugEnabled()) {
-                logger.debug(String.format("An exception occurred while 
finalizing account id with accountName, domainId and projectId" +
-                      "using callingAccountId=%s", callingAccount.getUuid()), 
ex);
-            }
-            logger.warn("Unable to find accountId associated with 
accountName=" + accountName + " and domainId="
-                  + domainId + " or projectId=" + projectId + ", using 
callingAccountId=" + callingAccount.getUuid());
+            logger.error("Unable to find accountId associated with 
accountName={} and domainId={} or projectId={}" +
+                    ", using callingAccountId={}", accountName, domainId, 
projectId, callingAccount.getUuid());
+            logger.debug("An exception occurred while finalizing account id 
with accountName, domainId and projectId" +
+                    "using callingAccountId={}", callingAccount.getUuid(), ex);
         }
         return accountIdToUse != null ? accountIdToUse : 
callingAccount.getAccountId();
     }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vm/BaseDeployVMCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vm/BaseDeployVMCmd.java
index ecbde47692f..a72fdee3a58 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vm/BaseDeployVMCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vm/BaseDeployVMCmd.java
@@ -416,9 +416,7 @@ public abstract class BaseDeployVMCmd extends 
BaseAsyncCreateCustomIdCmd impleme
                     nic = null;
                 }
                 String networkUuid = entry.get(VmDetailConstants.NETWORK);
-                if (logger.isTraceEnabled()) {
-                    logger.trace(String.format("nic, '%s', goes on net, '%s'", 
nic, networkUuid));
-                }
+                logger.trace("Checking if NIC '{}' can be mapped on network 
'{}'", nic, networkUuid);
                 if (nic == null || StringUtils.isEmpty(networkUuid) || 
_entityMgr.findByUuid(Network.class, networkUuid) == null) {
                     throw new 
InvalidParameterValueException(String.format("Network ID: %s for NIC ID: %s is 
invalid", networkUuid, nic));
                 }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vm/CreateVMFromBackupCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vm/CreateVMFromBackupCmd.java
index 04e413ed67a..e17ba9c2d70 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vm/CreateVMFromBackupCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vm/CreateVMFromBackupCmd.java
@@ -137,7 +137,7 @@ public class CreateVMFromBackupCmd extends BaseDeployVMCmd {
                     message.append(", Please check the affinity groups 
provided, there may not be sufficient capacity to follow them");
                 }
             }
-            logger.info(String.format("%s: %s", message.toString(), 
ex.getLocalizedMessage()));
+            logger.info("{}: {}", message.toString(), 
ex.getLocalizedMessage());
             logger.debug(message.toString(), ex);
             throw new 
ServerApiException(ApiErrorCode.INSUFFICIENT_CAPACITY_ERROR, 
message.toString());
         }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java
index dc1ca3583cc..3800b505bd2 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java
@@ -111,12 +111,12 @@ public class DeployVMCmd extends BaseDeployVMCmd {
                         message.append(", Please check the affinity groups 
provided, there may not be sufficient capacity to follow them");
                     }
                 }
-                logger.info(String.format("%s: %s", message.toString(), 
ex.getLocalizedMessage()));
+                logger.info("{}: {}", message.toString(), 
ex.getLocalizedMessage());
                 logger.debug(message.toString(), ex);
                 throw new 
ServerApiException(ApiErrorCode.INSUFFICIENT_CAPACITY_ERROR, 
message.toString());
             }
         } else {
-            logger.info("VM " + getEntityUuid() + " already created, load 
UserVm from DB");
+            logger.info("VM {} already created, load UserVm from DB", 
getEntityUuid());
             result = 
_userVmService.finalizeCreateVirtualMachine(getEntityId());
         }
 
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vm/ResetVMPasswordCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vm/ResetVMPasswordCmd.java
index 7270004aeed..7e99d155d2f 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vm/ResetVMPasswordCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vm/ResetVMPasswordCmd.java
@@ -120,9 +120,9 @@ public class ResetVMPasswordCmd extends BaseAsyncCmd 
implements UserCmd {
         UserVm vm = _responseGenerator.findUserVmById(getId());
         if (StringUtils.isBlank(password)) {
             password = _mgr.generateRandomPassword();
-            logger.debug(String.format("Resetting VM [%s] password to a 
randomly generated password.", vm.getUuid()));
+            logger.debug("Resetting VM [{}] password to a randomly generated 
password.", vm.getUuid());
         } else {
-            logger.debug(String.format("Resetting VM [%s] password to password 
defined by user.", vm.getUuid()));
+            logger.debug("Resetting VM [{}] password to password defined by 
user.", vm.getUuid());
         }
         CallContext.current().setEventDetails("Vm Id: " + getId());
         UserVm result = _userVmService.resetVMPassword(this, password);
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vpc/CreateStaticRouteCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vpc/CreateStaticRouteCmd.java
index c4b5e159b5c..d88af6b9ef7 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vpc/CreateStaticRouteCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vpc/CreateStaticRouteCmd.java
@@ -94,7 +94,7 @@ public class CreateStaticRouteCmd extends BaseAsyncCreateCmd {
             setEntityId(result.getId());
             setEntityUuid(result.getUuid());
         } catch (NetworkRuleConflictException ex) {
-            logger.info("Network rule conflict: " + ex.getMessage());
+            logger.info("Network rule conflict: {}", ex.getMessage());
             logger.trace("Network rule conflict: ", ex);
             throw new 
ServerApiException(ApiErrorCode.NETWORK_RULE_CONFLICT_ERROR, ex.getMessage());
         }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vpn/CreateRemoteAccessVpnCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vpn/CreateRemoteAccessVpnCmd.java
index 417ba2773c4..b1b9e14b319 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vpn/CreateRemoteAccessVpnCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vpn/CreateRemoteAccessVpnCmd.java
@@ -146,7 +146,7 @@ public class CreateRemoteAccessVpnCmd extends 
BaseAsyncCreateCmd {
                 throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, 
"Failed to create remote access vpn");
             }
         } catch (NetworkRuleConflictException e) {
-            logger.info("Network rule conflict: " + e.getMessage());
+            logger.info("Network rule conflict: {}", e.getMessage());
             logger.trace("Network Rule Conflict: ", e);
             throw new 
ServerApiException(ApiErrorCode.NETWORK_RULE_CONFLICT_ERROR, e.getMessage());
         }
diff --git 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vpn/CreateVpnConnectionCmd.java
 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vpn/CreateVpnConnectionCmd.java
index 0b5c46d36eb..b0166d8ef21 100644
--- 
a/api/src/main/java/org/apache/cloudstack/api/command/user/vpn/CreateVpnConnectionCmd.java
+++ 
b/api/src/main/java/org/apache/cloudstack/api/command/user/vpn/CreateVpnConnectionCmd.java
@@ -133,7 +133,7 @@ public class CreateVpnConnectionCmd extends 
BaseAsyncCreateCmd {
                 throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, 
"Failed to create site to site vpn connection");
             }
         } catch (NetworkRuleConflictException e) {
-            logger.info("Network rule conflict: " + e.getMessage());
+            logger.info("Network rule conflict: {}", e.getMessage());
             logger.trace("Network Rule Conflict: ", e);
             throw new 
ServerApiException(ApiErrorCode.NETWORK_RULE_CONFLICT_ERROR, e.getMessage());
         }
diff --git a/api/src/main/java/org/apache/cloudstack/context/CallContext.java 
b/api/src/main/java/org/apache/cloudstack/context/CallContext.java
index 69376e4f6d7..4cefd7847fd 100644
--- a/api/src/main/java/org/apache/cloudstack/context/CallContext.java
+++ b/api/src/main/java/org/apache/cloudstack/context/CallContext.java
@@ -180,9 +180,7 @@ public class CallContext {
         }
         s_currentContext.set(callingContext);
         ThreadContext.push("ctx-" + UuidUtils.first(contextId));
-        if (LOGGER.isTraceEnabled()) {
-            LOGGER.trace("Registered: " + callingContext);
-        }
+        LOGGER.trace("Registered: {}", callingContext);
 
         s_currentContextStack.get().push(callingContext);
 
@@ -279,9 +277,7 @@ public class CallContext {
             return null;
         }
         s_currentContext.remove();
-        if (LOGGER.isTraceEnabled()) {
-            LOGGER.trace("Unregistered: " + context);
-        }
+        LOGGER.trace("Unregistered: {}", context);
         String contextId = context.getContextId();
         String sessionIdOnStack = null;
         String sessionIdPushedToNDC = "ctx-" + UuidUtils.first(contextId);
@@ -289,9 +285,7 @@ public class CallContext {
             if (sessionIdOnStack.isEmpty() || 
sessionIdPushedToNDC.equals(sessionIdOnStack)) {
                 break;
             }
-            if (LOGGER.isTraceEnabled()) {
-                LOGGER.trace("Popping from NDC: " + contextId);
-            }
+            LOGGER.trace("Popping from NDC: {}", contextId);
         }
 
         Stack<CallContext> stack = s_currentContextStack.get();
diff --git a/api/src/main/java/org/apache/cloudstack/context/LogContext.java 
b/api/src/main/java/org/apache/cloudstack/context/LogContext.java
index c367975aba3..24b92090e7f 100644
--- a/api/src/main/java/org/apache/cloudstack/context/LogContext.java
+++ b/api/src/main/java/org/apache/cloudstack/context/LogContext.java
@@ -136,9 +136,7 @@ public class LogContext {
         }
         s_currentContext.set(callingContext);
         ThreadContext.put("logcontextid", UuidUtils.first(contextId));
-        if (LOGGER.isTraceEnabled()) {
-            LOGGER.trace("Registered for log: " + callingContext);
-        }
+        LOGGER.trace("Registered for log: {}", callingContext);
         return callingContext;
     }
 
@@ -207,9 +205,7 @@ public class LogContext {
         LogContext context = s_currentContext.get();
         if (context != null) {
             s_currentContext.remove();
-            if (LOGGER.isTraceEnabled()) {
-                LOGGER.trace("Unregistered: " + context);
-            }
+            LOGGER.trace("Unregistered: {}", context);
         }
         ThreadContext.clearMap();
     }

Reply via email to