CDK Deploy를 위한 Minimum Policy는 무엇일까 당연히 Administrator Role 인줄 알았는데 아래의 Role도 일단 Deploy는 성공했다. { "Version": "2012-10-17", "Statement": [ { "Action": [ "cloudformation:*" ], "Resource": "*", "Effect": "Allow" }, { "Condition": { "ForAnyValue:StringEquals": { "aws:CalledVia": [ "cloudformation.amazonaws.com" ] } }, "Action": "*", "Resource": "*", "Effect": "Allow" }, { "Action": "s3:*", "Resource":..
vector v; int i = 0; cout
C++을 사용하다 보면 중간 값을 구하는 연산으로 흔히들 아래와 같이 쓴다 mid = (l + r ) / 2; mid = (left + right) / 2; // 또는 mid = (start + end) / 2;가끔 다른 사람들이 짜 놓은 소스코드를 보면 아래와 같이 돼있는 걸 본적이 있다. mid = l + (r - l) / 2; mid = left + (right - left) / 2; mid = start + (end - start) / 2;수학적으로는 전혀 차이가 없는데 저렇게 나누는 이유는? Overflow 때문이다. 변수들이 int로 선언된 경우, left + right가 INT_MAX를 넘어서는 경우 overflow가 일어나서 원하는 결과대로 수행이 되질 않는다. 따라서 최소한의 방어벽을 치..
AWS의 Amazon Pinpoint에는 Event를 저장하는 기능이 있다. Event Stream이라 하여, Amazon Pinpoint에서 발생하는 모든 로그를 AWS Kinesis로 보내는 기능인데, 나는 보통 Elasticsearch로 보내어 로그를 관리 한다. 이후 Kibana를 통해 BI를 구성하여 쓴다. Pinpoint EventStream 기능을 활성화 하여 Kinesis Firehose를 통해 Elasticsearch로 보내도록 구성해보자. Elasticsearch 도메인 생성 새 도메인 생성 버튼 누른 후 원하는 것을 선택한다. 나는 개발 및 테스트를 선택했다. 이후 도메인 이름을 적당히 지정 후 네트워크를 구성한다. 나는 도메인 이름을 pinpoint로 지정하였다. 나는 네트워크 구성..
Python requests 모듈 사용 중 아래와 같은 에러가 났다. AttributeError: module 'requests' has no attribute 'get' AttributeError: module 'requests' has no attribute 'post' 으잉 분명 pip로 패키지 설치 완료 했는데 도대체 뭘까? 굉장히 황당하게도, requests 모듈을 사용하려는 파일 이름이 http.py 라서 안되는 것이었다 -_- 다른 이름으로 바꿨더니 정상적으로 수행됐다. 뭥미.
AWS의 Amazon Pinpoint에 이벤트를 보내고, 이벤트 발생시 캠페인을 발송 하도록 만들어 보자. Custom Event 생성 { "ApplicationId": "80716e293edf4c43a3023f4ade22f26c", "EventsRequest": { "BatchItem": { "email-h": { "Endpoint": { "Address": "jakemraz100@gmail.com", "ChannelType": "EMAIL" }, "Events": { "KeyName": { "EventType": "_userauth.sign_up", "Timestamp": "2020-05-15T11:10:02Z" } } } } } } 위에서 "email-h"는 endpoint의 id이다. 위 이벤트를..
AWS Java SDK v2를 사용하여 AWS Elasticsearch에 쿼리하는 코드를 작성해보자 Gradle 추가 Gradle에 Elasticsearch 버전을 맞추어 아래를 추가한다. implementation 'org.elasticsearch.client:elasticsearch-rest-client:7.7.0' implementation 'com.google.code.gson:gson:2.8.6' implementation 'software.amazon.awssdk:auth' implementation 'software.amazon.awssdk:apache-client' 참고로 지금 내가 쓰는 es 버전은 7.4인데 sdk 버전은 7.7...
IaC를 통해 람다를 배포하는 여러가지 방법이 있다. CDK를 통해 cdk-cli를 통하여 배포하는 방법, SAM(Serverless Application Model)을 통하여 sam-cli를 통해 배포하는 방법. 또는 CloudFormation을 통해 직접 배포 코드를 작성 하는 방법. 지금까지 내가 알고 있던 세 방법의 공통점은, Lambda Handler를 S3 Bucket에 올린 후, Ref: 를 통해 가져오는 방식이라는 점이었다. 이런 방식에서는 CD(Continous Delivery)를 통해서는 어찌 배포 해야 하는가... 고민에 빠진 시점이 있었다. 최근 AWS CodeBuild의 IaC를 작성하다가.. BuildSpec의 내용을 CloudFormation의 yaml에 직접 작성하는 것을 보..
- Total
- Today
- Yesterday
- kering
- winapi
- db
- source
- C
- android
- 프로그래밍
- Cloud
- MFC
- Python
- database
- Quiz
- AWS
- 드라이버
- driver
- Troubleshooting
- it
- gcc
- jni
- API
- 안드로이드
- Visual C++
- NDK
- C++
- linux
- 리눅스
- 음악
- algorithm
- java
- jni강좌
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 30 |
31 |