전체 글
-
[ Python ] csv 파일 읽고, 쓰기 ( pandas / csv 모듈 )Python/Python For Analytics 2023. 5. 16. 14:08
데이터를 처리하다 보면 csv 파일 자주 만나게 되는데, Python pandas와 csv 모듈로 처리할 수 있다. 파이썬 pandas csv 파일 읽고, 쓰기 샘플데이터 : example.csv (UTF-8) ============================= "Student","Math","Computer","English" "인호",90,85,100 "철수",85,100,95 "영희",75,70,85 "민수",95,85,90 "지훈",100,85,95 "지영",90,85,90 "정희",95,85,95 ============================= pandas의 read_csv 메소드로 csv 파일 읽기 import pandas as pd df = pd.read_csv(r'C:\Python\..
-
[ Python ] 리눅스 mpstat 유틸을 이용한 CPU Core별 통계 뽑기. (평균값, 최대값, 최소값)Python/Python for Linux 2023. 5. 14. 22:39
Datebase CPU Core 증설작업 후 Core별로 CPU가 모두 활동하는지 확인해볼 필요가 생겼다. 리눅스의 mpstat는 Core 별 사용량을 모니터링할 수 있다. 결과를 파일로 export 하고, Python을 하여 DataFrame화 하려 한다. DataFrame 하게 되면 DB, NoSQL 등에 저장하여 통계적으로 활용할 수 있겠다. 목표 : 리눅스의 mpstat 유틸과 python을 이용하여 Core 별 통계 추출 mpstat 명령어를 이용한 데이터 수집 ( 파일 리다이랙션 ) # 1초간격으로 모든 CPU Core 사용량을 추출 (리눅스 명령) # Output File : cpu_result_final.txt mpstat -P ALL 1 >> cpu_result_final.txt %usr..
-
[ Python ] 웹 서버 날짜 확인 하기Python/Python Programming 2023. 5. 14. 13:35
header 정보에서 날짜 추출하기 import urllib.request url = 'web domain' date = urllib.request.urlopen(url).headers['Date'] print(date) Sun, 14 May 2023 04:32:47 GMT 한국시간 GMT +0900으로 변경 from datetime import datetime from datetime import timedelta date = date.rstrip(' GMT')[5:] date = datetime.strptime(date, '%d %b %Y %H:%M:%S') + timedelta(hours=9) print(date) 2023-05-14 13:31:17
-
[ Python ] ntplib 모듈을 이용한 시간 동기화 점검Python/Python Programming 2023. 5. 14. 13:22
ntplib 모듈설치 pip install ntplib NTP서버와 로컬간의 offset 체크 import ntplib from time import ctime timeServer = 'time.windows.com' # NTP Server Domain Or IP c = ntplib.NTPClient() response = c.request(timeServer, version=3) print('NTP Server Time과 Local Time과 차이는 %.2f s입니다.' %response.offset) -------------------------------------------------------------------- NTP Server Time과 Local Time과 차이는 0.71 s입니다. ..
-
[ Python ] numpy를 이용한 1차원 배열 2 차원 배열로 변환Python/Python Programming 2023. 5. 12. 14:07
list 데이터를 처리하다 보면, 1차원 배열을 2차원 배열로 변경해야할 때가 있는데, numpy를 이용하면 쉽게 이용할 수 있다. reshape : 데이터를 변동시키지 않고, 새로운 배열을 만든다. import numpy as np # 3 X 10 a = [ x for x in range(30) ] a = np.array(a) a = a.reshape(10,3) # (2차원 원소수, 원소당 갯수) print(a) array([[ 0, 1, 2], [ 3, 4, 5], [ 6, 7, 8], [ 9, 10, 11], [12, 13, 14], [15, 16, 17], [18, 19, 20], [21, 22, 23], [24, 25, 26], [27, 28, 29]]) # 5 X 6 a = a.reshape(..
-
[ AWS ] Python boto3를 이용하여 RDS Connections 데이터 추출 하기AWS Infra 2023. 5. 11. 11:30
import boto3 from datetime import datetime from datetime import timedelta cloudwatch = boto3.client('cloudwatch') def rds_connections(): StartTime = datetime(2023,5,1) - timedelta(hours=9) # 한국시간에 맞게 -0900 # 한국기준으로 5월 1일로 지정해줬기 때문에, UTC는 4월 30일 15시 데이터 추출한다. EndTime = StartTime + timedelta(days=1) response = cloudwatch.get_metric_statistics( Namespace='AWS/RDS', MetricName='DatabaseConnections',..
-
[ AWS ] Python boto3를 이용하여 ELB Metric 모니터링AWS Infra 2023. 5. 10. 14:14
Python Boto3를 이용하여 ELB 2XX Count 통계를 추출해보고, 효율적으로 모니터링해보자. 메소드는 cloudwatch.get_metric_statistics이용하고, MetricName은 HTTPCode_Target_2XX_Count 을 사용하면 된다. ELB 콘솔 cloudwatch에서도 아래지표와 같이 볼 수 있는데, 이 데이터를 Python으로 추출해보자 from datetime import datetime from datetime import timedelta cloudwatch = boto3.client('cloudwatch') elb = 'string' # elb의 arn의 app이하 부분부터 넣어주면 된다. def elb_2XX_Count(elb): response = clo..
-
[ Python ] 날짜형식의 문자열 타입을 datetime 타입 형식으로 변환Python/Python Programming 2023. 5. 3. 14:55
Database, logs 등 날짜형식 데이터를 Python으로 불러와서 처리할 때, 문자열로 저장되게 된다. Python에서 날짜 데이터를 이용하여 그래프를 그리거나 연산을 하기 위해서는 형 변환이 필요하다. datime.datetime.strptime : date 문자열을 datetime 형식으로 변환 from datetime import datetime strtype = '2018-09-15 00:01:14' print(type(strtype)) logdate = datetime.strptime(strtype, '%Y-%m-%d %H:%M:%S') print(type(logdate)) print(logdate) -------------------------------------------------..