Patchwork [bitbake-devel,v3,12/15] knotty: Add ability to dynamically toggle log location

login
register
mail settings
Submitter Jason Wessel
Date June 6, 2012, 8:28 p.m.
Message ID <1339014519-9972-13-git-send-email-jason.wessel@windriver.com>
Download mbox | patch
Permalink /patch/29353/
State New
Headers show

Comments

Jason Wessel - June 6, 2012, 8:28 p.m.
Add the ability to see where all the per task logs
were written to disk.

The resulting output looks like where [...] is the full path:

NOTE: LOG: [...]/python-2.7.2-r2.20/temp/log.do_package_setscene.8719
NOTE: LOG: [...]/perl-5.14.2-r7/temp/log.do_package_setscene.8760

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
---
 lib/bb/ui/knotty.py |   13 +++++++++++++
 1 file changed, 13 insertions(+)

Patch

diff --git a/lib/bb/ui/knotty.py b/lib/bb/ui/knotty.py
index 765ad27..e485c7e 100644
--- a/lib/bb/ui/knotty.py
+++ b/lib/bb/ui/knotty.py
@@ -253,6 +253,7 @@  class StdinMgr:
 class RtLogLevel:
     def __init__(self, handler, logfilter, mlt, tf):
         self.displaytail = False
+        self.displayLogLocations = False
         self.handler = handler
         self.logfilter = logfilter
         self.defaultLevel = logfilter.getFiltLevel()
@@ -291,6 +292,14 @@  class RtLogLevel:
                 print "NOTE: Activing task \"top\" mode"
             if isinstance(self.tf, TerminalFilter):
                 self.tf.setTopMode()
+        elif input == "l":
+            if verbose:
+                print "NOTE: Activating log locations display"
+            self.displayLogLocations = True
+        elif input == "L":
+            if verbose:
+                print "NOTE: Disable log locations display"
+            self.displayLogLocations = False
         elif input == "h":
             print "============================================="
             print "Interaction help commands:"
@@ -300,6 +309,7 @@  class RtLogLevel:
             print " 3 - turn on debug logging"
             print " 4 - turn on debug logging and real time log tail"
             print " t - Display tasks in \"top\" mode (formerly knotty2 mode)"
+            print " l - emit log locations (L to turn off)"
             print " h - display commands"
             return False
         return True
@@ -387,6 +397,9 @@  def main(server, eventHandler, tf = TerminalFilter):
                 continue
             helper.eventHandler(event)
             if isinstance(event, bb.build.TaskStarted):
+                if (rtloglevel.displayLogLocations):
+                    termfilter.clearFooter()
+                    print "NOTE: LOG: %s" % event.logfile
                 mlt.openLog(event.logfile, event.pid)
                 rtloglevel.displayLogs()