์์น ์ ๋ณด json์ api gateway๋ฅผ ์ด์ฉํด์ aws opensearch๊น์ง ์ ์ก ์๋ฃ
Day-4์์ Api Gateway๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๊ณผ์ ์์ ํค๋งค๊ณ ์์๋ค. ๊ฒฐ๊ตญ ์ค๋ ๊ทธ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค.
์ด์ ๋ ๋ฐ์ดํฐ ์ ์ก ํ
ํ๋ฆฟ์ ํ๋ํ๋ ์์ฑ ํ๋ ค๊ณ ํ๋ค. ํ์ง๋ง ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๋ถ๋ถ์ ์ ๋ง ๊ฐ๋จํ ์์ฑํ ์ ์์๋ค.
//๋งคํ ํ
ํ๋ฆฟ
{
"StreamName": "api-gateway-kinesis-proxy",
"Data": "$util.base64Encode($input.body)",
"PartitionKey": "$context.requestId"
}
์ด์ ๋ Data
์ ๋ค์ด๊ฐ ์์๋ฅผ ๋ฐ์๋ค ๋นผ์ ํ๋ํ๋ ์์ฑ์ ํ๊ฒ ์์ธ์ด์๋ค...
Security ๋ฉ๋ด์์ Kinesis Firehose์ permissions
์ญํ arn์ ์ถ๊ฐํด์ผ Opensearch์ ๋ฐ์ดํฐ๊ฐ ์ถ๊ฐ ๋๋ค.
์์ฒญ ๋ฐ๋์ ๊ฐํ(์ค ๋ฐ๊ฟ)์ ์ฌ์ฉํ์ง ์๊ณ ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํด์ผ ํ๋ค.
{
"truckerId": "588866",
"@timestamp_utc": "2022-05-17T08:02:55.567Z",
"location": {
"lat": 37.3044668,
"lon": 127.0422522
}
}
์ด json ํ์ผ์
{"truckerId": "588866", "@timestamp_utc": "2022-05-17T08:02:55.567Z", "location": {"lat": 37.3044668, "lon": 127.0422522}}
์ด๋ฐ ํ์์ผ๋ก ๋ฐ๊พธ์ด์ผ ํ๋ค.
ํ๋ฃจํ๋ฃจ ์ ๋ง ๋ง์ ๊ตฌ๊ธ๋ง๊ณผ ์ฝ์ง์ ํ๋๋ฐ ๋ต์ ์ฐพ๊ณ ๋ณด๋ฉด ํ๋ฌดํ ์ผ๋ค์ด ๋ง์๋ค. ๋ด์ผ์ ์ ์คํ ๊ตฌ๊ธ๋ง๊ณผ ์ฐจ๋ถํ ์๋๋ค์ ํด์ผ๊ฒ ๋ค. ใ