/img/avatar-ianjang.png

Ian Jang's IT Blog

Welcome to my Blog!

Django ORM PostgreSQL JSONField에 대해 exclude 구문 사용시 주의사항

들어가며 PostgreSQL JSON Field에 대하여 ORM 구문 작성 시 exclude를 사용한다면 주의하길 바랍니다. JSON Field에 대한 질의 결과가 일반적인(?) 예상과는 조금 다른 결과가 나옵니다. 그 때문에 이 같은 내용을 모르고 사용한다면 혼란에 빠질 수 있습니다. 실제로 본인 포함한 여러 개발자가 동일한 케이스로 혼란을 겪은 경험이 있습니다. 본 글의 내용을 접한 분들은 동일한 혼란을 겪지 않을 수 있길 바랍니다. (* 본 글은 Django 3.0.7, psycopg2-binary 2.8.5, PostgreSQL 12.4 기준으로 테스트 후 작성되었습니다.

EC2 디스크 공간, 메모리 사용량 CloudWatch 지표 쌓기

들어가며 AWS CloudWatch를 이용하여 AWS Cloud Infrastructure에 대한 다양한 지표를 대시보드 형태로 구성하여 모니터링을 할 수 있습니다. 다만 EC2 내부의 디스크 공간(Disk Space)과 메모리 사용량(Memory Usage)을 모니터링하기 위해서는 별도 작업이 필요합니다. EC2 내부에 지표 수집용 스크립트 설치 디스크 공간(Disk Space), 메모리 사용량(Memory Usage) 지표를 수집하고 싶은 EC2에 SSH 접속하여 아래 스크립트를 수행합시다. 1 2 3 4 5 6 7 8 9 10 sudo apt-get update sudo apt-get install unzip sudo apt-get install libwww-perl libdatetime-perl curl https://aws-cloudwatch.

구동 중인 AWS EC2 디스크 용량 늘리기

들어가며 서비스 운영 중인 EC2의 디스크 용량이 가득 차는 문제가 발생할 수 있습니다. 이때 정지 시간(Downtime) 없이 디스크 용량을 늘릴 수 있습니다. 먼저 AWS Console 또는 AWS CLI를 이용하여 Volume 사이즈를 늘인 후 Volume이 연결된 EC2에 SSH 접속하여 Partition 확장을 해야 합니다. 더욱 자세한 내용은 본문을 참고 바랍니다. EC2 Volume Size 수정 아래 순서대로 작업을 진행합시다. AWS Console 접속 > Services > EC2 > Volumes 수정하려는 볼륨 선택 > Actions - Modify Volume(볼륨수정) 선택 수정을 원하는 Size(크기) 입력 작업을 완료하고 나면 Volume의 상태가 “in-use - optimizing"으로 변경됩니다.

AWS Lambda, S3를 이용한 이미지 변환 자동화(feat. ImageMagick)

들어가며 이미지 리소스를 S3에 업로드 하면 자동으로 압축이 되게 할 순 없을까? AWS Lambda를 이용하면 이 같은 자동화된 기능을 구현하여 사용할 수 있습니다. 여러 가지 사례를 참고하여 직접 자동화 작업을 진행하고, 그 내용을 정리해 보았습니다. ImageMagick 먼저 이미지 압축을 위해 사용한 ImageMagick을 소개합니다. ImageMagick은 이미지 변환용으로 널리 쓰이는 오픈소스 라이브러리입니다. 위키백과:이미지매직 ImageMagick 설치 저는 먼저 우분투환경에서 ImageMagick을 설치하여 사용해 보았습니다. 아래 순서로 진행하였습니다. 1 2 3 4 5 6 7 8 9 10 11 12 # PNG library 설치 sudo apt-get install libpng-dev # ImageMagick 설치 git clone https://github.

Crontab 이용하여 주기적으로 오래된 파일 제거하기

들어가며 서버 애플리케이션이 특정 경로에 파일(로그, 이미지 등)을 쌓는 구조로 되어 있다면 언젠가 용량이 가득 차는 문제를 맞이할 수 있습니다. 이를 예방하기 위해선 특정 기간이 지난 파일을 지우거나, 압축하여 별도 저장소로 옮긴다거나 하는 과정이 필요합니다. 간단한 shell 스크립트를 작성하고 crontab에 등록하여 이러한 과정을 자동화 할 수 있습니다. Crontab 명령어 1 2 3 4 5 6 7 8 # crontab 추가 / 수정 crontab -e # crontab 확인 crontab -l # crontab 로그 확인 cat /var/log/syslog | grep CRON 오래된 파일을 제거하는 스크립트 작성하기 아래 정리된 명령어를 참고합시다.

AWS Media Convert 파해치기

들어가며 효과적인 영상 압축을 위해 AWS Media Convert 서비스를 사용해 보았습니다. 막상 사용하려고 보니 온통 처음 보는 용어가 가득했습니다. 이런 용어들을 이해해야 제대로 기능을 활용할 수 있을 것 같았습니다. 본문에는 기본적인 AWS Media Convert 서비스에 대한 소개와 더불어 각종 영상 압축 관련 용어들을 조금은 두서없이 정리해 보았습니다. (* 본 글은 2019년 작성된 글로, 그 사이 비용 등 많은 부분이 변경되었을 수 있습니다.) 비용(Pricing) Basic Plan / AVC 코덱 / 아시아 태평양(서울) 리전 / On-Demand 요금 기준 fps<=30 30<fps<=60 60<fps<=120 SD 0.