oss做网站,烟台互联网公司,怎样建网站平台,域名状态查询监控log文件的需求
某些特殊原因#xff0c;想一直看到.log 的最后一行打印#xff0c;所以写了一些代码监控log
#xff08;有个奇怪需求#xff0c;就是log 因为重复启动原因#xff0c;会一直加#xff0c;不是同一个log#xff09; 监控界面 涉及的Python代码想一直看到.log 的最后一行打印所以写了一些代码监控log
有个奇怪需求就是log 因为重复启动原因会一直加不是同一个log 监控界面 涉及的Python代码
有需要的拿去吧
时间戳unicode - 没用上python 3文件夹遍历读取文件夹enumerate 方法while 循环 sleep(1)
# 相关的Renderdoc 关于glsl shader的逆向代码 非Pythonhttps://blog.csdn.net/avi9111/article/details/132798279?spm1001.2014.3001.5502
# Notices:
# 1. the 3rd parameter of open() is to disable file buffering
# so file updated by another process could be picked up correctly
# but since your focus is newly added tail, enable buffering is ok too
# 2. It is not necessary to fh.tell() to save the position, and then seek()
# to resume, as if readline() failed, the pointer stay still at the EOFimport sys
import time
import os
if sys.version_info[0] 3:unicode str
获取文件的创建时间
#模型奇妙 https://www.cnpython.com/qa/153573
def get_FileCreateTime(filePath):#filePath unicode(filePath,encodingutf8)#Python 3 renamed the unicode type to str,t os.path.getctime(filePath)#return TimeStampToTime(t)return t
#获取文件内容(info)参考https://blog.csdn.net/HeatDeath/article/details/79526037
def checkLatestLog(folder):files os.listdir(folder)name_latest t_latest -1for i,n in enumerate(files):#这个 i 没什么用就是写着玩t get_FileCreateTime(folder\\ n)#这个拼接代码应该在 win 平台才能用if tt_latest:t_latest tname_latest nreturn folder \\ name_latest#这个代码应该在 win 平台才能用filename sys.argv[1]#全路径吧要是相对路径。。。本来可以现在应该会有问题 下面套了逻辑
print(...open...filename)
thisFilePath filename
#就是一个很普通的update 循环也可以不用 with open() 套外面不过之前代码就是这个逻辑
with open(filename) as fh:
#with open(filename, r, 0) as fh:
#with os.fdopen(filename,wb,0) as fh:while True: line fh.readline()if not line:time.sleep(1)# 加了一个逻辑判断当前文件夹是否有最新日志logFilePath checkLatestLog(os.path.dirname(filename))if(logFilePath!thisFilePath):fh open(logFilePath)thisFilePath logFilePathprint(.............. 换了一个 log .............. logFilePath)else:print(line)