평소와 다름없이 로컬에서 docker 빌드 후 ECR에 올려 ECS로 배포를 했는데 계속 죽길래 클라우드 와치에서 로그를 확인해봤다. exec /bin/sh: exec format error 포맷 에러요? 유일하게 바뀐 환경은 노트북이 m2라는 것인데 (기존에는 인텔) 이때는 빌드할때만 한 가지 옵션을 더 주면 된다. 기존에 아래와 같이 도커 이미지를 빌드 했다면 % aws ecr get-login-password --region ap-northeast-2 | docker login --username AWS --password-stdin 1234567890123.dkr.ecr.ap-northeast-2.amazonaws.com % docker build -t apis --build-arg profile..
Object를 json으로 직렬화할 때 null 값은 포함되지 않도록 하고 싶었다. 객체에 @JsonInclude 어노테이션을 걸어 null 값이 아닌 경우만 포함하도록 해주었지만 클래스에도 필드에도 다 먹히질 않는다. @JsonInclude(JsonInclude.Include.NON_NULL) public class Payload { private String templateCode; private List attributes; @JsonInclude(JsonInclude.Include.NON_NULL) private List failoverConfigs; public String getTemplateCode() { return templateCode; } public void setTemplateCo..
PowerDNS-Admin 내장 API를 사용하는데 기본 소요 시간이 개발서버는 3초, 운영서버는 8초 걸린다. 기존에 모든 인스턴스 타입이 t계열이라서 그 영향이 있을까 싶어 Admin 인스턴스와 Hidden 인스턴스 타입 상향을 왕창 했는데 전혀 효과가 없었다. 찾고 찾다가 PDNS 설정 중에 bg_domain_updates를 ON 해주면 Admin 콘솔 대시보드에서 도메인 목록을 불러올 때 속도를 개선할 수 있다는 내용을 발견하고 바로 ON 해보았더니 API 통신 소요 시간이 300~500ms 안팎으로 찍힌다. bg_domain_updates 설정값이 뭐길래 싶어 PDNS 소스를 까보니 bg_domain_updates 설정이 OFF 되어 있으면 레코드 작업을 할 때 PowerDNS에서 모든 도메인을..