From 43fd2122985f029f6a8550f8c48a0cda5b1dec73 Mon Sep 17 00:00:00 2001 From: Hugo Trippaers Date: Wed, 30 Jul 2014 16:04:35 +0200 Subject: [PATCH] Add some debug logging to keep track of timing --- .../agent/resource/virtualnetwork/FileConfigItem.java | 10 ++++++++++ .../resource/virtualnetwork/ScriptConfigItem.java | 10 ++++++++++ .../virtualnetwork/VirtualRoutingResource.java | 8 ++++++++ 3 files changed, 28 insertions(+) diff --git a/core/src/com/cloud/agent/resource/virtualnetwork/FileConfigItem.java b/core/src/com/cloud/agent/resource/virtualnetwork/FileConfigItem.java index beb0942b767..0d444786355 100644 --- a/core/src/com/cloud/agent/resource/virtualnetwork/FileConfigItem.java +++ b/core/src/com/cloud/agent/resource/virtualnetwork/FileConfigItem.java @@ -72,4 +72,14 @@ public class FileConfigItem extends ConfigItem { return sb.toString(); } + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("FileConfigItem, copying "); + sb.append(fileContents.length()); + sb.append(" characters to "); + sb.append(fileName); + return sb.toString(); + } + } diff --git a/core/src/com/cloud/agent/resource/virtualnetwork/ScriptConfigItem.java b/core/src/com/cloud/agent/resource/virtualnetwork/ScriptConfigItem.java index 3398074d94d..cd5e059f8e8 100644 --- a/core/src/com/cloud/agent/resource/virtualnetwork/ScriptConfigItem.java +++ b/core/src/com/cloud/agent/resource/virtualnetwork/ScriptConfigItem.java @@ -56,4 +56,14 @@ public class ScriptConfigItem extends ConfigItem { return sb.toString(); } + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("ScriptConfigItem, executing "); + sb.append(script); + sb.append(' '); + sb.append(args); + return sb.toString(); + } + } diff --git a/core/src/com/cloud/agent/resource/virtualnetwork/VirtualRoutingResource.java b/core/src/com/cloud/agent/resource/virtualnetwork/VirtualRoutingResource.java index 5c1ee0d0d9f..4c58991456b 100644 --- a/core/src/com/cloud/agent/resource/virtualnetwork/VirtualRoutingResource.java +++ b/core/src/com/cloud/agent/resource/virtualnetwork/VirtualRoutingResource.java @@ -168,6 +168,8 @@ public class VirtualRoutingResource { private Answer applyConfig(NetworkElementCommand cmd, List cfg) { + + if (cfg.isEmpty()) { return new Answer(cmd, true, "Nothing to do"); } @@ -176,7 +178,12 @@ public class VirtualRoutingResource { List details = new ArrayList(); boolean finalResult = false; for (ConfigItem configItem : cfg) { + long startTimestamp = System.currentTimeMillis(); ExecutionResult result = applyConfigToVR(cmd.getRouterAccessIp(), configItem); + if (s_logger.isDebugEnabled()) { + long elapsed = System.currentTimeMillis() - startTimestamp; + s_logger.debug("Processing " + configItem + " took " + elapsed + "ms"); + } if (result == null) { result = new ExecutionResult(false, "null execution result"); } @@ -190,6 +197,7 @@ public class VirtualRoutingResource { s_logger.warn("Expected " + cmd.getAnswersCount() + " answers while executing " + cmd.getClass().getSimpleName() + " but received " + results.size()); } + if (results.size() == 1) { return new Answer(cmd, finalResult, results.get(0).getDetails()); } else {