Updated Branches:
  refs/heads/master 3160a0c2d -> 329c6eb4d

Adding tracelogging to CitrixResourceBase xapi task handling.

Currently it is very hard to see which tasks are pending in cloudstack
that need to be executed by xapi. Ideally we would like to have a
central overview of all tasks centrally. But for now being able to
enable tracelogging should give some insight in what is going on.


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/329c6eb4
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/329c6eb4
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/329c6eb4

Branch: refs/heads/master
Commit: 329c6eb4d3566cdefd6bf624acac5607e3399930
Parents: 3160a0c
Author: Hugo Trippaers <[email protected]>
Authored: Thu Jun 27 10:27:53 2013 -0700
Committer: Hugo Trippaers <[email protected]>
Committed: Thu Jun 27 14:54:31 2013 -0700

----------------------------------------------------------------------
 .../cloud/hypervisor/xen/resource/CitrixResourceBase.java   | 9 +++++++++
 1 file changed, 9 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/329c6eb4/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
----------------------------------------------------------------------
diff --git 
a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
 
b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
index af640a2..cbbec7c 100644
--- 
a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
+++ 
b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
@@ -3721,8 +3721,14 @@ public abstract class CitrixResourceBase implements 
ServerResource, HypervisorRe
 
     protected void waitForTask(Connection c, Task task, long pollInterval, 
long timeout) throws XenAPIException, XmlRpcException {
         long beginTime = System.currentTimeMillis();
+        if (s_logger.isTraceEnabled()) {
+            s_logger.trace("Task " + task.getNameLabel(c) + " (" + 
task.getType(c) + ") sent to " + c.getSessionReference() +  " is pending 
completion with a " + timeout + "ms timeout");
+        }
         while (task.getStatus(c) == Types.TaskStatusType.PENDING) {
             try {
+                if (s_logger.isTraceEnabled()) {
+                    s_logger.trace("Task " + task.getNameLabel(c) + " (" + 
task.getType(c) + ") is pending, sleeping for " + pollInterval + "ms");
+                }
                 Thread.sleep(pollInterval);
             } catch (InterruptedException e) {
             }
@@ -3737,6 +3743,9 @@ public abstract class CitrixResourceBase implements 
ServerResource, HypervisorRe
 
     protected void checkForSuccess(Connection c, Task task) throws 
XenAPIException, XmlRpcException {
         if (task.getStatus(c) == Types.TaskStatusType.SUCCESS) {
+            if (s_logger.isTraceEnabled()) {
+                s_logger.trace("Task " + task.getNameLabel(c) + " (" + 
task.getType(c) + ") completed");
+            }
             return;
         } else {
             String msg = "Task failed! Task record: " + task.getRecord(c);

Reply via email to