나는 1 분에 1 회 실행되는 파이썬 스크립트를 가지고있다. 디버깅을 위해 오류/예외가있는 텍스트 파일을 만들려고합니다. 오류가없는 경우 로그 파일을 원하지 않습니다.python 오류 (stderr)를 로그 파일에 저장하는 방법 오류가 실제로 발생하는 경우에만 사용할 수 있습니까?
편집 : 모든 코드를 try/except 루프에 넣을 수 없으므로 this은 도움이되지 않습니다.
첫째, 내가 stderr
을 저장하고하는 일을 .txt로합니다 : 오류가 발생하지 이후
sys.stderr = open('ERRORS_%s.txt' % (infile), 'a')
with open("%s_Error_Messages.txt" % (MSKSN), "a") as myfile:
myfile.close()
둘째, 나는 다음 (어떤 raise SystemExit
위치하기 전에 빈 "%s_Error_Messages.txt" % (MSKSN)
파일을 삭제하려고 그렇지 않으면 raise SystemExit
위치가없는 것 도달했습니다).
내가 얻는 것은 WindowsError: [Error 32] The process cannot access the file because it is being used by another process
입니다. 나는 이것이 스크립트가 실행되는 한 stderr
이 항상 python.exe에 의해 사용되기 때문이라고 가정합니다. 첫 번째 단계에 대한
if sys.stderr != 0:
sys.stderr = open('ERRORS_%s.txt' % (infile), 'a')
이 결코 경우에만 .txt로하는 sys.stderr를 작성하는 방법
0 실제 오류? 당신이 걱정하는 오류 데이터의 거대한 볼륨이 없다면
을 사용하여이 기능을 설정을 시도 할 수'나는 이것을 얻을 수없는 당신이 – xiaoyi