728x90
파이썬 프로그래밍으로 윈도우 이벤트로그 목록을 구하는 방법을 소개합니다.
기본적인 설명은 다음과 같습니다.
- 윈도우 이벤트 로그는 %SystemRoot%\System32\winevt\logs에 저장됨
- 윈도우에서 파이썬으로 파일목록을 구하려면 glob라이브러리를 사용할 수 있음
이제 윈도우 이벤트 로그가 저장된 폴더에서 이벤트로그 목록을 구하는 파이썬 코드를 소개합니다.
소스코드는 다음과 같습니다.
출력을 더 편하게 보기 위해 json.dumps에 indent를 주어 작성했습니다.
import os
import glob
import json
def get_evtpath_list():
evtpath_list = []
evtlog_path = os.getenv('SystemRoot', "C:\\Windows") + \
"\\System32\\winevt\\logs\\*"
for f in glob.glob(evtlog_path, recursive=True):
evtpath_list.append(f)
return evtpath_list
if "__main__" == __name__:
evtpath_list = get_evtpath_list()
print(json.dumps(evtpath_list, indent=4))
실행화면은 다음과 같습니다.
다음으로 이벤트로그 경로로부터 이벤트 채널이름을 추출하여 출력하는 소스코드입니다.
get_evtpath_list함수는 위에서 소개하여 내용을 생략합니다.
import os
import glob
import json
import ntpath
import pathlib
def get_evtpath_list(): #생략...
def abspath_to_channel_name(abspath):
bname = ntpath.basename(abspath)
pure_file_stem = pathlib.PurePath(bname).stem
pure_file_ext = pathlib.PurePath(bname).suffix
file_path = ntpath.dirname(abspath)
return (pure_file_stem)
if "__main__" == __name__:
evtpath_list = get_evtpath_list()
for evtpath in evtpath_list:
print(abspath_to_channel_name(evtpath))
다음은 실행화면입니다.
이상과 같이 파이썬 프로그래밍으로 윈도우 이벤트로그 목록을 구하는 방법을 소개했습니다.
728x90
'Python' 카테고리의 다른 글
python으로 windows service 만들기 (0) | 2022.06.09 |
---|---|
python isPalindrome 함수 (0) | 2022.06.02 |
[python] 경기도 아파트 실거래 데이터로 경사하강법 학습하기 (0) | 2022.05.16 |
[python] 경기도 아파트 매매 실거래 데이터 그래프 그리기 (0) | 2022.05.16 |
[python] 경기도 아파트 매매 실거래 데이터 가져오기 (0) | 2022.05.16 |