PYTHON
-
[Python] 리스트에서 숫자요소의 인덱스 위치 구하기Python/Python Programming 2018. 5. 13. 02:13
1. 숫자로 구성된 리스트 객체에서 숫자요소를 인덱스로 넣기 - 결과값 없음 a = [100,200,300,400,500] a.index(500) -------------------------- 없음 2. 문자열로 변환하여 인덱스 값 찾기 def intSearching(array,n): return list(map(str, array)).index(str(n)) print(intSearching([100,200,300,400,500],400)) # 배열과 찾고 싶은 값의 인덱스 --------------------------------------------------------- 3
-
[Python] 정규식 전방탐색과 후방탐색을 이용한 문자열 분할Python/Python Programming 2018. 5. 13. 00:34
DOCS : https://docs.python.org/3/library/re.html 로그파일이 일정한 구분자 (콤마(,), 공백, 세미콜론(;)) 로 구분되어 있으면 리스트나 튜플이 인덱싱을 이용하여 쉽게 분석할 수 있다. 하지만 비정형 로그 분석 혹은 모든 이벤트에 따라 로그형식이 일정치 않다면 파이썬 정규식의 기능인 "전방탐색"과 "후방탐색"을 통해 분할 할 수 있다. 예제 텍스트 파일) 2018-05-12 00:00:01 ABC DEFG log: this is python 2018-05-12 00:00:02 ABC DEFG HI log: this is python 2018-05-12 00:00:03 ABC DEFG HI JKL log: this is python ------------------..
-
[Python] maria DB 접속 로그 (1) - 설정 및 모니터링Mysql, Maria DB 2018. 5. 12. 17:33
1. maria DB 로깅설정 set global general_log = 1; set global log_output = 'TABLE'; show variables where Variable_name in ('version', 'log' , 'general_log') 2. 접속로그 확인 쿼리 select * from general_log where command_type = 'Connect' 3. 파이썬(python)을 이용한 접속로그 출력 import pymysql conn = pymysql.connect(host='ip', user='root', password='password',db='mysql', charset='utf-8') c = conn.cursor() c.execute('select *..
-
webknight 웹 방화벽으로 IIS 웹 사이트 보안 - 4부(로그파싱)Open Source 2018. 5. 12. 16:34
파이썬을 이용한 Webknight(웹 나이트) 이벤트 로그 파싱 - 차단 이벤트 추출 : OnPreprocHeaders ', ' OnUrlMap - 각각의 필드를 이용하여 모니터링을 보다 강화할 수 있다. ex) 특정 클라이어인트IP를 모니터링하고 싶다면 'client IP'를 필드에 조건을 걸어서 Email, SMS연동하여 모니터링이 가능하다 event = (' OnPreprocHeaders ',' OnUrlMap ') def printLog(): print(' date : ' + line[0] + '\n', 'time : ' + line[1] + '\n', 'siteInstance : ' + line[2] + '\n', 'event : ' + line[3] + '\n', 'clientIP : ' + ..
-
[Python] ftplib 모듈을 이용한 FTP 파일 업로드Python/Python Programming 2018. 5. 9. 21:04
파이썬(python)의 ftplib 을 이용한 파일 업로드. (Upload files using Python's ftplib module) import ftplib ftp = ftplib.FTP('host') ftp.login('user','password') filename = 'test.zip' myfile = open('filename', 'rb') # binary = rb, ASCII = r ftp.storbinary('STOR ' + filename, myfile) # Store a file in binary transfer mode : storbinary # Store a file in ASCII transfer mode : storlines myfile.close()
-
[Python] subprocess 모듈과 DOS ping 명령어를 이용한 핼스 체크Python/Python for Windows 2018. 5. 9. 01:34
파이썬 subprocess 모듈과 DOS ping 명령어를 이용한 IP ping 체크 DOS 명령어의 결과값을 이용하여 ping 체크 및 응답시간을 체크할 수 있다. Ping Check와 응답시간 임계치는 조건문을 이용하여 별도로 모니터링을 할 수 있다. import subprocess import re pinglist = (ip1,ip2) p = re.compile('[=]\s(\d+)[m][s]') for i in pinglist: cmd = 'ping -n 3 '+i # ping을 3번 수행 try: for x in subprocess.check_output(cmd).splitlines(): p1 = p.findall(str(x)) print(i, 'Ping Ok','최소 응답시간: '+p1[0],..
-
[Python] sys모듈로 입력인수 처리하기Python/Python for Windows 2018. 5. 7. 21:36
파이썬 실행파일에 인수를 받아 처리하고자 할 때, sys모듈의 argv 메소드를 이용하여 처리할 수 있다. 파일을 코드에 삽입하지 않고, 인수로 받아서 처리할 때 사용할 수 있다.. test2.py 실행파일에 인수로 받는 파일내용 읽기 import sys import os os.chdir(r'C:\test') args = sys.argv[1:] for x in args: with open(x, 'r') as f: for y in f.readlines(): print(y)
-
[Python] To occur windows beep sound. (윈도우 비프음 발생시키기)Python/Python for Windows 2018. 5. 7. 21:20
모니터링을 할 경우 어떤한 조건이 Fail 발생할 때, 비프음을 발생시켜 간단하게 모니터링을 할 수 있다. DOCS : https://docs.python.org/3/library/winsound.html?highlight=winsound#module-winsound import winsound as ws def beepsound(): freq = 2000 # range : 37 ~ 32767 dur = 1000 # ms ws.Beep(freq, dur) # winsound.Beep(frequency, duration) print(beepsound())