Python
-
[Python] 로그스탬프 UTC 한국시간 계산하기Python/Python Programming 2019. 7. 2. 01:00
시스템 로그 / 보안로그 / 웹로그를 분석하다보면 타임스탬프가 UTC시간이 표기될 때가 있다. 한국시간의 경우 UTC 에서 9시간을 더한 것과 같다. datetime 모듈의 timedelta 메소드를 이용하면 UTC시간을 변환할 수 있다. timedelta 메소드로 일/시/분/초까지 계산할 수 있으며, 양수는 과거, 음수는 미래를 계산한다. 로그 타임스탬프가 yyyy-mm-dd hh:mm:ss 형식일 경우 from datetime import datetime from datetime import timedelta timestring = '2018-09-15 00:01:14' logdate = datetime.strptime(timestring, '%Y-%m-%d %H:%M:%S') - timedelta(..
-
윈도우 성능 데이터 분석 3부 - 사례를 이용한 grafana 시각화Python/Python for Windows 2019. 6. 26. 19:43
3부에서는 Grafana를 이용하여 그래프를 표현해보겠다. grafana mariadb 연결 : https://pydole.tistory.com/217 한대의 웹서버나 7일간 데이터를 샘플로 CPU, Memory, Network 를 그래프로 표현해보자 1. Network Traffic (Rev + Send) - 인아웃바운드 총 트래픽이 초당 Peak 일때는 100M - 정기적으로 평일 오전에 트래픽이 많음을 알 수 있다. - 초당 100M면 서버를 증설하여 분산하거나 트래픽이 큰 컨텐츠를 발견하여 줄이거나 제거하는 것이 좋다. 2. process time - 대체적으로 CPU 사용율은 25%를 넘기지 않는다. - 20일 오전 CPU가 살짝 올라왔으나 정상범주이다. 프로세스별 CPU 점유 모니터링이나 작업..
-
[Python] Access Log 유니코드를 한글로 변환Python/Python Programming 2019. 4. 18. 19:02
access log 파일이나 한글 URL경로를 보면 한글이 유니코드로 표기되어 있다. python으로 이를 한글로 쉽게 변환이 가능하다. from urllib.parse import unquote_plus site = '.com/%EA%B3%A0%EB%93%B1-%EC%98%81%EC%96%B4' searchword = unquote_plus(site, encoding='utf-8', errors='replace') print(searchword) ------------------------------------------------------------------- .com/고등-영어
-
[Python] Linux에서 간단한 Web 모니터링 하기Python/Python for Linux 2019. 4. 15. 19:31
Python Version : 2.7.5 #!/usr/bin/python import requests as req from datetime import datetime import time sites = ('http://192.168.x.77','http://192.168.x.77/xxxx.php') for site in sites: try: r = req.get(site) print site, 'return_code :', r.status_code except Exception as e: print site, 'fail' time.sleep(10) ★ 웹 페이지가 기동 중 일 때, 아래와 같이 응답코드 값을 리턴 받을 수 있습니다. http://192.168.x.77 return_code : 200 (..
-
[Python] Linux Sendmail을 이용한 메일 보내기Python/Python for Linux 2019. 4. 13. 22:12
- OS : CentOS 7 - Python 2.7 #!/usr/bin/python from email.mine.text import MIMEText from subprocess import Popen, PIPE msg = MIMEText('Body Text') msg['Subject'] = 'Subject Text' msg['From'] = 'From Email Address' msg['To'] = 'To Email Address' p = Popen(["/usr/sbin/sendmail", "-t"], stdin=PIPE) p.communicate(msg.as_string()) Step 1. sendmail install # yum install sendmailyum install sendmail se..
-
[ CentOS ] Python pip installPython/Python for Linux 2019. 4. 13. 20:50
Step1. distribute zip download - https://pypi.org/project/distribute/#files # wget [ Link ] Step2. distribute zip download # unzip distribute-0.7.3.zip # cd distribute-0.7.3 # python setup.py install # easy_install pip # pip -V pip 19.0.3 from /usr/lib/python2.7/site-packages/pip-19.0.3-py2.7.egg/pip(python 2.7)
-
[Python] datetime.strftime를 이용한 날짜와 시간 변환Python/Python Programming 2019. 4. 11. 13:31
from datetime import datetime timenow = datetime.now() # Current Time dt = timenow.strftime('%m-%d-%Y, %H:%M:%S') # datetime print(dt) 04-11-2019, 13:20:17 year1 = timenow.strftime('%Y') # Year with century as a decimal number print(year1) 2019 year2 = timenow.strftime('%y') # Year without century as a zero-padded decimal number print(year2) 19 month1 = timenow.strftime('%m') # Month as a zero-p..
-
[Python] linux ping check(ICMP) programPython/Python for Linux 2019. 4. 9. 13:40
#!/usr/bin/python # Python Version : 2.7.5 from os import system from datetime import datetime checkList = ('127.0.0.1','192.168.x.99','192.168.x.98') logTime = str(datetime.today())[:19] for host in checkList: cmdstring = 'ping -c1 '+host+' 1>/dev/null' # Linux Ping Check Command var = system(cmdstring) if var == 0: # value = 0, OK print host, 'ping ok : ', logTime else: print host, 'ping fail ..