", mode: " + self.mode + "]"
def colAlignedString(self):
- return "%16s %8s %4s" % ( \
- self.date.strftime("%Y-%m-%d %H:%M"), self.epoch, self.mode)
+ age = datetime.datetime.now() - self.date
+ total_hours = age.total_seconds()/3600
+ if total_hours <= 48:
+ agestr = "(%s h)" % int(total_hours)
+ else:
+ agestr = "(%s d)" % age.days
+ return "%16s %7s %8s %4s" % ( \
+ self.date.strftime("%Y-%m-%d %H:%M"), agestr, self.epoch, self.mode)
@staticmethod
def getDirName(date, epoch, mode):
fl = fcntl.fcntl(fd, fcntl.F_GETFL)
fcntl.fcntl(fd, fcntl.F_SETFL, fl | os.O_NONBLOCK)
- def readlineNonBlocking(stream):
- """Read a line nonblocking. Returns b'' if nothing read."""
- try:
- return stream.readline()
- except:
- return b''
- pass
-
-
# Read stdout and stderr of tarp
errmsg = b""
while tarp.poll() == None:
rd,wr,ex = select.select([tarp.stdout, tarp.stderr], [], [], 0.05)
-
if tarp.stdout in rd:
- l = readlineNonBlocking(tarp.stdout)
- if l != b"":
- logging.debug(l[:-1].decode())
-
+ logging.debug( tarp.stdout.readline()[:-1].decode() )
if tarp.stderr in rd:
- errmsg += readlineNonBlocking(tarp.stderr)
-
+ errmsg += tarp.stderr.read()
# Get the remainging output of tarp
for l in tarp.stdout.readlines():