5.10. 클라우드 데이터베이스에 온도 저장
서버 코드 변경
import psycopg2
import json
from datetime import datetime
def lambda_handler(event, context):
query_parameters = event.get('queryStringParameters', {})
# 이름, 온도, 날짜정보 수신
name = query_parameters.get('name', None)
temperature = query_parameters.get('temperature', None)
date = query_parameters.get('date', None)
# 파라미터가 없다면 오류 반환
if name is None or temperature is None or date is None:
return {
'statusCode': 400,
'body': json.dumps(f'parameter error {name}, {temperature}, {date}')
}
# 문자열을 적절한 형태로 변환
temperature = float(temperature)
date = datetime.strptime(date, "%Y-%m-%d %H:%M:%S")
try:
# 데이터베이스 연결
conn = psycopg2.connect(
host = "호스트 주소",
database = "데이터베이스 이름",
user = "유저 이름",
password = "마스터 비밀번호"
)
except:
return {
'statusCode': 401,
'body': json.dumps('Database Connect Error')
}
with conn.cursor() as curs:
try:
# 온도정보 저장
curs.execute("""INSERT INTO "TemperatureInformation" (name, temperature, date) values (%s, %s, %s);""", (name, temperature, date))
# 트랜잭션 테이블에 반영
curs.execute("commit;")
except:
return {
'statusCode': 402,
'body': json.dumps('Insert Error')
}
return {
'statusCode': 200,
'body': json.dumps('Success Data Insert')
}온도 정보 클라우드에 저장
Raspberry Pi(Python)
클라우드 데이터베이스 정보 확인

온도정보 필터링

Last updated