- logtail.append(l)
- if len(logcollection) > 1:
- logtail = sorted(logtail)[-maxlen:]
- logtxt = "\n ".join(l.strip() for l in logtail)
+ logt.append(l)
+
+ if len(mergelogs) > 1:
+ keys = mergelogs.keys()
+ loglines = []
+ while True:
+ earliest = None
+ for k in keys:
+ if mergelogs[k]:
+ if earliest is None or mergelogs[k][0][0] < mergelogs[earliest][0][0]:
+ earliest = k
+ if earliest is None:
+ break
+ ts, msg = mergelogs[earliest].popleft()
+ loglines.append("%s %s %s" % (ts, earliest, msg))
+ loglines = loglines[-maxlen:]
+ else:
+ loglines = mergelogs.values()[0]
+
+ logtxt = "\n ".join(l.strip() for l in loglines)