로그 디렉터리에서 여러 로그 파일을 구문 분석하여 목록에서 서버 이름과 함께 문자열을 검색하려고합니다. 내가 백만 가지 옵션을 시도한 것 같아요, 그리고 그것은 하나의 로그 파일로 잘 작동합니다.하지만 디렉터리에있는 모든 로그 파일을 통과하려고 할 때 나는 어디에도 가지 않는 것처럼 보입니다.문자열에 대한 다중 로그 파일 구문 분석
if args.f:
logs = args.f
else:
try:
logs = glob("/var/opt/cray/log/p0-current/*")
except IndexError:
print "Something is wrong. p0-current is not available."
sys.exit(1)
valid_errors = ["error", "nmi", "CATERR"]
logList = []
for log in logs:
logList.append(log)
#theLog = open("logList")
#logFile = log.readlines()
#logFile.close()
#printList = []
#for line in logFile:
# if (valid_errors in line):
# printList.append(line)
#
#for item in printList:
# print item
# with open("log", "r") as tmp_log:
# open_log = tmp_log.readlines()
# for line in open_log:
# for down_nodes in open_log:
# if valid_errors in open_log:
# print valid_errors
down_nodes
는 아래 표시된 서버의리스트를 포함하는 스크립트까지 상기 미리 작성된 목록이다.
내가 해왔 던 다양한 시도 중 일부가 주석 처리되었습니다.
logList = []
for log in logs:
logList.append(log)
나는 이것이 내가 어쩌면 ..이 목록을 통해 목록에서 다음 루프를 각 개별 로그 파일을 넣고 open()
가 readlines()
다음에하지만 난 여기에 논리의 일종을 누락 사용하는 것이 앞으로 방법이 될 수있다 생각 제대로 생각하지 않아.
나는 여기에 약간의 포인터로 정말로 할 수있다.
감사합니다.
로그는 glob 별 결과로 이미 목록입니다. –