[Lldb-commits] [PATCH] D17798: Fetch remote log files from LLGS tests

Pavel Labath via lldb-commits lldb-commits at lists.llvm.org
Thu Mar 3 01:07:47 PST 2016


This revision was automatically updated to reflect the committed changes.
Closed by commit rL262597: Fetch remote log files from LLGS tests (authored by labath).

Changed prior to commit:
  http://reviews.llvm.org/D17798?vs=49593&id=49720#toc

Repository:
  rL LLVM

http://reviews.llvm.org/D17798

Files:
  lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py

Index: lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py
===================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py
+++ lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py
@@ -47,6 +47,7 @@
 
     _verbose_log_handler = None
     _log_formatter = logging.Formatter(fmt='%(asctime)-15s %(levelname)-8s %(message)s')
+    _remote_server_log_file = None
 
     def setUpBaseLogging(self):
         self.logger = logging.getLogger(__name__)
@@ -104,10 +105,35 @@
             self.stub_hostname = "localhost"
 
     def tearDown(self):
+        if self._remote_server_log_file is not None:
+            lldb.remote_platform.Get(lldb.SBFileSpec(self._remote_server_log_file),
+                    lldb.SBFileSpec(self.getLocalServerLogFile()))
+            lldb.remote_platform.Run(lldb.SBPlatformShellCommand("rm " + self._remote_server_log_file))
+            self._remote_server_log_file = None
+
         self.logger.removeHandler(self._verbose_log_handler)
         self._verbose_log_handler = None
         TestBase.tearDown(self)
 
+    def getLocalServerLogFile(self):
+        return self.log_basename + "-server.log"
+
+    def setUpServerLogging(self, is_llgs):
+        if len(lldbtest_config.channels) == 0:
+            return # No logging requested
+
+        if lldb.remote_platform:
+            log_file = lldbutil.join_remote_paths(lldb.remote_platform.GetWorkingDirectory(), "server.log")
+            self._remote_server_log_file = log_file
+        else:
+            log_file = self.getLocalServerLogFile()
+
+        if is_llgs:
+            self.debug_monitor_extra_args.append("--log-file=" + log_file)
+            self.debug_monitor_extra_args.append("--log-channels={}".format(":".join(lldbtest_config.channels)))
+        else:
+            self.debug_monitor_extra_args = ["--log-file=" + self.log_file, "--log-flags=0x800000"]
+
     def get_next_port(self):
         return 12000 + random.randint(0,3999)
 
@@ -214,19 +240,16 @@
                 self.skipTest("lldb-server exe not found")
 
         self.debug_monitor_extra_args = ["gdbserver"]
-
-        if len(lldbtest_config.channels) > 0:
-            self.debug_monitor_extra_args.append("--log-file={}-server.log".format(self.log_basename))
-            self.debug_monitor_extra_args.append("--log-channels={}".format(":".join(lldbtest_config.channels)))
+        self.setUpServerLogging(is_llgs=True)
 
         if use_named_pipe:
             (self.named_pipe_path, self.named_pipe, self.named_pipe_fd) = self.create_named_pipe()
 
     def init_debugserver_test(self, use_named_pipe=True):
         self.debug_monitor_exe = get_debugserver_exe()
         if not self.debug_monitor_exe:
             self.skipTest("debugserver exe not found")
-        self.debug_monitor_extra_args = ["--log-file={}-server.log".format(self.log_basename), "--log-flags=0x800000"]
+        self.setUpServerLogging(is_llgs=False)
         if use_named_pipe:
             (self.named_pipe_path, self.named_pipe, self.named_pipe_fd) = self.create_named_pipe()
         # The debugserver stub has a race on handling the 'k' command, so it sends an X09 right away, then sends the real X notification


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17798.49720.patch
Type: text/x-patch
Size: 3322 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20160303/cfa97f5d/attachment.bin>


More information about the lldb-commits mailing list