From 42e3f10bbf68f0177c6839b5ec8e41069b717c5f Mon Sep 17 00:00:00 2001
From: Erik Reid <erik.reid@geant.org>
Date: Thu, 28 May 2020 20:00:01 +0200
Subject: [PATCH] add args to task log meta data

---
 inventory_provider/tasks/common.py | 3 ++-
 inventory_provider/tasks/worker.py | 8 +++++---
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/inventory_provider/tasks/common.py b/inventory_provider/tasks/common.py
index 1e201938..3125c810 100644
--- a/inventory_provider/tasks/common.py
+++ b/inventory_provider/tasks/common.py
@@ -36,7 +36,8 @@ TASK_LOG_SCHEMA = {
                 'worker': {'type': ['string', 'null']},
                 'pid': {'type': 'integer'},
                 'warning': {'type': 'boolean'},
-                'error': {'type': 'boolean'}
+                'error': {'type': 'boolean'},
+                'args': {'type': 'array'}
             },
             'required': ['task', 'id', 'worker', 'pid', 'warning', 'error'],
             'additionalProperties': False
diff --git a/inventory_provider/tasks/worker.py b/inventory_provider/tasks/worker.py
index 56ec176c..59187503 100644
--- a/inventory_provider/tasks/worker.py
+++ b/inventory_provider/tasks/worker.py
@@ -106,17 +106,17 @@ class InventoryTask(Task):
         self._append_to_log('ERROR', str(exc))
         save_task_log(
             InventoryTask.config,
-            {'messages': self.messages, 'meta': self._meta()})
+            {'messages': self.messages, 'meta': self._meta(args=args)})
         super().on_failure(exc, task_id, args, kwargs, einfo)
 
     def on_success(self, retval, task_id, args, kwargs):
         self._append_to_log('INFO', 'DONE')
         save_task_log(
             InventoryTask.config,
-            {'messages': self.messages, 'meta': self._meta()})
+            {'messages': self.messages, 'meta': self._meta(args=args)})
         super().on_success(retval, task_id, args, kwargs)
 
-    def _meta(self, message = None):
+    def _meta(self, message=None, args=None):
         meta_struct = {
             'task': self.name,
             'id': self.request.id,
@@ -127,6 +127,8 @@ class InventoryTask(Task):
         }
         if message:
             meta_struct['message'] = message
+        if args is not None:
+            meta_struct['args'] = args
         return meta_struct
 
     def return_value(self, message='OK'):
-- 
GitLab