You are not logged in Log in Join
You are here: Home » Members » Torped » Tips_and_HowTos » ReadStupiedLogFile.py » View Document

Log in
Name

Password

 

ReadStupiedLogFile.py

ReadStupiedLogFile.py

This file can be used by TextPad to parse the stupid log file to make traceback messages clickable.

It keeps track on the last parsed row, and only shows new error messages.

See the Textpad tooltips howto on how to set up TextPad to use this script.

# $Header:  Exp $
#
# (c) 2002, Torped Strategi och Kommunikation AB.
# See GPL.txt for License information.
#


import sys
stdout = sys.stdout

stupid_log_file="C:\EasyPublisher17\slf.log"

stdout.write("Arguments used:\n")
for arg in sys.argv[1:]:
    arg = arg.split('=')
    if len(arg)==2:
        key, value=arg
        key=key.strip()
        value=value.strip()
        if key.lower()=='stupid_log_file':
            stupid_log_file=value

    stdout.write("Key %s, Value: %s\n" % (key,value))
stdout.write("============================================================\n")


start_row=0
old_row=0
try:
    slf_ptr = open("slf_pointer","r")
    start_row=int(slf_ptr.readline())
    old_row=int(slf_ptr.readline())
    slf_ptr.close()
except:
    pass


slf = open(stupid_log_file,"r")
row=0
row_value = slf.readline()
while row_value:
    if row>=start_row:
        stdout.write(row_value)
    row+=1
    row_value = slf.readline()
slf.close()    

if row==start_row:
    stdout.write("No new output, listing old\n")
    stdout.write("==========================\n\n")
    slf = open(stupid_log_file,"r")
    row=0
    row_value = slf.readline()
    while row_value:
        if row>=old_row:
            stdout.write(row_value)
        row+=1
        row_value = slf.readline()
    slf.close()      
else:
    old_row=start_row
    
slf_ptr = open("slf_pointer","w")
slf_ptr.write(str(row)+"\n")
slf_ptr.write(str(old_row)+"\n")
slf_ptr.close()