keep track of file size
This commit is contained in:
parent
dcf2cbdbee
commit
1e5a2df1a0
9
main.py
9
main.py
@ -10,7 +10,7 @@ from argparse import ArgumentParser
|
||||
|
||||
def readstate(file: str) -> dict:
|
||||
if not os.path.exists(file):
|
||||
default_state = {'seek': 0}
|
||||
default_state = {'seek': 0, 'size': 0}
|
||||
writestate(file, default_state)
|
||||
return default_state
|
||||
|
||||
@ -41,7 +41,13 @@ def main():
|
||||
|
||||
# read file
|
||||
state = readstate(args.state_file)
|
||||
fsize = os.path.getsize(args.log_file)
|
||||
|
||||
if fsize < state['size']:
|
||||
state['seek'] = 0
|
||||
|
||||
with open(args.log_file, 'r') as f:
|
||||
if state['seek']:
|
||||
# jump to the latest readed position
|
||||
f.seek(state['seek'])
|
||||
|
||||
@ -50,6 +56,7 @@ def main():
|
||||
|
||||
# save new position
|
||||
state['seek'] = f.tell()
|
||||
state['size'] = fsize
|
||||
writestate(args.state_file, state)
|
||||
|
||||
# if got something, send it to telegram
|
||||
|
Loading…
x
Reference in New Issue
Block a user