전체 글 (94) 썸네일형 리스트형 swagger 보안 설정 + Istio VirtualService @nestjs/swagger는 Nest.js 서버에서 REST API를 문서화할 수 있는 패키지입니다.문서에 별도 보안 설정을 하지 않은 상태에서 URL이 노출될 경우 문서 열람 및 API 실행이 가능한 위험성이 있습니다. 환경 제한swagger 문서를 초기화하는 코드를 APP_ENV 조건문으로 감싸 로컬/개발 환경 등 특정한 조건하에서만 생성할 수 있습니다. id, password 설정설정된 id, password를 입력해야 접근 가능하도록 설정할 수 있습니다. (참고)서비스에 이미 개발되어 있는 인증/인가와는 별개로 앱 초기화시 원하는 엔드포인트에 지정하는 방식입니다. Bearer 인증 적용인증 token을 입력하도록 설정할 수 있습니다. (참고) IP Whitelist 설정허용 ip 외엔 에러를 뱉.. GCP VM Alert 설정 w/Terraform 사내 리소스 생성시 GCP 콘솔 내에서 직접 생성하는 것을 지양하고 있지만, terraform으로 이관시의 우선순위상 아직 terraform으로 만들어진 적이 없고 콘솔에만 존재하는 것도 있습니다. 이 중 하나인 monitoring alert을 terraform으로 세팅한 과정입니다.이를 통해 과거 산발적으로 만들어진 alert를 이관, 관리하고 앞으로 생성하는 alert들을 탬플릿화 및 상태 관리할 수 있습니다. 1. VM의 지표를 모니터링 하도록 설정: VM이 boot disk image로 어떤 OS를 사용하는지 파악하고 detector 또는 agent 설정일부 지표는 설정 없이도 모니터링 가능합니다. 하지만 VM의 observability 차트 또는 alert의 차트에 나오지 않는 데이터를 보려고.. MySQL + TypeORM - Illegal mix of collations Error 서버에서 발생한 에러 메세지는 아래와 같았습니다.QueryFailedError: Illegal mix of collations (utf8mb4_0900_ai_ci,COERCIBLE) and (utf8mb4_general_ci,COERCIBLE) for operation '=' 에러 메세지 내용으로 파악했을 때 이는 mysql table, column 등에서 지정할 수 있는 collation이 불일치하는 오류였고,문제가 발생한 api에는 raw query 덩어리가 들어가있기 때문에 원인 후보를 줄이고자 오류가 발생한 api와 유사한 기능을 하는 api들을 확인하였습니다.정상 동작하는 api들과 이슈 리폿 받은 api 포함 문제가 발생하는 두 api의 쿼리를 미루어보아, 특정 view의 한 column이 문.. 인프라 설정시의 multi-line string indicators yaml 파일을 보다보면 아래처럼 | (pipe) 가 들어간 부분이 있습니다.python의 f-string 처럼 작성 그대로의 multi-line 인식을 지원하는 indicator입니다.(전략) metadata: labels: app: good-service annotations: # Critical for Istio/Envoy sidecar lifecycle management sidecar.istio.io/holdApplicationUntilProxyStarts: "true" proxy.istio.io/config: | proxyMetadata: EXIT_ON_ZERO_ACTIVE_CONNEC.. MySQL - 사용자가 특정 테이블에만 접근할 수 있도록 설정 분산 시스템 개발을 하다보면 여러 서버가 동일한 DB를 공유하는 상태로 만들 수도 있습니다.설계에 따라 여러 서버가 각각의 목적에 따라 동일한 DB의 일부 테이블을 조회하거나 데이터를 수정할 수 있는데요,필요한 정보만 사용할 수 있게끔 서버에 부여한 DB 계정에 권한 설정을 해둘 수 있습니다. mysql> create table table01 (id int unsigned primary key, name varchar(20));mysql> create table table02 (id int unsigned primary key, classroom varchar(10))mysql> show tables;+---------------------+| Tables_in_common_db |+-----------.. 이전 1 2 3 4 ··· 19 다음