[moblab] Fix some issues with remote scheduler logging.

Logging was not going to the file as expected.
Added way to enable by changing the config so I can debug
partner issues.

BUG=None
TEST=built and tested on local moblab.

Change-Id: I250bbc0e7f5f278dd11d2d924216a5f026f6f332
Reviewed-on: https://chromium-review.googlesource.com/1574165
Commit-Ready: Keith Haddow <haddowk@chromium.org>
Tested-by: Keith Haddow <haddowk@chromium.org>
Reviewed-by: Matt Mallett <mattmallett@chromium.org>
diff --git a/src/remote-scheduler/config_connector.py b/src/remote-scheduler/config_connector.py
index 31c2ac0..1e0814b 100644
--- a/src/remote-scheduler/config_connector.py
+++ b/src/remote-scheduler/config_connector.py
@@ -71,3 +71,6 @@
         ap_name = self.get('MOBLAB', 'wifi_dut_ap_name', default=None)
         ap_pass = self.get('MOBLAB', 'wifi_dut_ap_pass', default='')
         return (ap_name, ap_pass)
+
+    def is_remote_task_debug_enabled(self):
+        return self.get("REMOTE_TASK_SCHEDULER", "debug_enabled", default=False)
diff --git a/src/remote-scheduler/moblab_remote_scheduler.py b/src/remote-scheduler/moblab_remote_scheduler.py
index 28c95ab..78894ef 100755
--- a/src/remote-scheduler/moblab_remote_scheduler.py
+++ b/src/remote-scheduler/moblab_remote_scheduler.py
@@ -167,10 +167,16 @@
         Args:
             level (int): One of the predefined logging levels, e.g loging.DEBUG
         """
-        root = logging.getLogger()
-        root.setLevel(level)
-        logging.basicConfig(
-            filename='/var/log/moblab_remote_schedule.log', level=level)
+        logging.getLogger().handlers = []
+        logging.getLogger().setLevel(level)
+        fh = logging.FileHandler('/var/log/moblab_remote_schedule.log')
+        fh.setLevel(level)
+        # create formatter and add it to the handlers
+        formatter = logging.Formatter(
+            '%(asctime)s - %(name)s - %(levelname)s - %(message)s')
+        fh.setFormatter(formatter)
+        logging.getLogger().addHandler(fh)
+
 
     def parse_arguments(self, argv):
         """Creates the argument parser."""
@@ -200,12 +206,14 @@
         is_enabled = self.config_connector.is_remote_task_scheduler_enabled()
         delay_mins = self.config_connector.get_remote_task_scheduler_tick_delay(
         )
+        debug_enabled = self.config_connector.is_remote_task_debug_enabled()
 
         options = self.parse_arguments(argv)
 
         logging_severity = logging.INFO
-        if options.verbose:
-            self.setup_logging(logging_severity)
+        if options.verbose or debug_enabled:
+            logging_severity = logging.DEBUG
+        self.setup_logging(logging_severity)
 
         if not is_enabled:
             logging.info("The scheduler is not enabled")