From 41c547bf163c2c046365ff94b7b38012b6931277 Mon Sep 17 00:00:00 2001
From: Patrick Simpson
Date: Tue, 25 Sep 2018 12:28:26 +0300
Subject: [PATCH] [KOE-176] Additional logging for task execution
---
.../AcaciaZPushPlugin/Utils/Tasks.cs | 10 ++++++++++
.../Utils/TasksBackground.cs | 19 ++++++++++++++++---
2 files changed, 26 insertions(+), 3 deletions(-)
diff --git a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/Tasks.cs b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/Tasks.cs
index c10c6e2..ecce292 100644
--- a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/Tasks.cs
+++ b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/Tasks.cs
@@ -71,6 +71,11 @@ namespace Acacia.Utils
}
}
+ public override string ToString()
+ {
+ return Id;
+ }
+
}
public abstract class TaskExecutor
@@ -136,8 +141,13 @@ namespace Acacia.Utils
public static void Task(AcaciaTask task, bool synchronous = false)
{
+ Logger.Instance.Debug(typeof(Tasks), "TASK added: {0}", task);
if (synchronous)
+ {
+ Logger.Instance.Debug(typeof(Tasks), "TASK exec synchronous 1: {0}", task);
task.Execute();
+ Logger.Instance.Debug(typeof(Tasks), "TASK exec synchronous 2: {0}", task);
+ }
else
Executor.AddTask(task);
}
diff --git a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/TasksBackground.cs b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/TasksBackground.cs
index 98acf58..8d5fbca 100644
--- a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/TasksBackground.cs
+++ b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/TasksBackground.cs
@@ -38,16 +38,29 @@ namespace Acacia.Utils
private void Worker()
{
- while (!_tasks.IsCompleted)
+ try
{
- AcaciaTask task = _tasks.Take();
- PerformTask(task);
+ while (!_tasks.IsCompleted)
+ {
+ Logger.Instance.Debug(this, "Take task 1");
+ AcaciaTask task = _tasks.Take();
+ Logger.Instance.Debug(this, "Take task 2: {0}", task);
+ PerformTask(task);
+ Logger.Instance.Debug(this, "Take task 3: {0}", task);
+ }
+ Logger.Instance.Debug(this, "Worker completed");
+ }
+ catch(Exception e)
+ {
+ Logger.Instance.Debug(this, "Worker failure: {0}", e);
}
}
protected override void EnqueueTask(AcaciaTask task)
{
+ Logger.Instance.Debug(this, "EnqueueTask 1: {0}", task);
_tasks.Add(task);
+ Logger.Instance.Debug(this, "EnqueueTask 2: {0}", task);
}
override public string Name { get { return "Background"; } }