๋ ๋ฒจ ์ ์ค๋ฅด๊ณ ๊ฒฝํ์น ์ด๊ธฐํ ์ ๋๊ธธ๋ ๋ค์ ๋น๋ํ๋ ๊ฐ์ง๋๋จ์๋๋ฐ
์ฐ์ด๋ณด๋๊น current_exp = min(current_exp + number,target_exp) ์ฌ์ผ ํ๋๋ฐย current_exp += min(current_exp + number,target_exp) ใ ใ ในํด๋จ์์ ใ ใ
์ข ๋ ์ ๊ด๋ฆฌํ๊ณ ์ถ์ผ๋ฉด Logger ๋ฅผ ๋ง๋ค์ด์ ๊ด๋ฆฌํ๋๊ฒ ์ข์
์ด์บ์ฐ๋ ๊ฑฐ์?
์ด์ผ ์ด๋ค๊ธฐ๋ณด๋จ ๊ทธ๋ฅ ๋ ํธํ๊ฒ ๋ง๋ค์ด์ ์ฐ๋๊ฑด๋ฐ
์ผ์ผํ print ๋ฅผ ํตํด ์ฝ๋์์ ๋ก๊ทธ๋ฅผ ์ง์ด๋ฃ์ผ๋ฉด ๊ด๋ฆฌ๋ ์ด๋ ต๊ณ ๋์ค์ ์ ์คํธ๋ง์ ๋น๋ํ๋ ๊ณผ์ ๋๋ฌธ์ ์ต์ ํ ๋ฌธ์ ๊ฐ ์๊ธธ์๋ ์๊ณ ๊ทธ๋ฌ๋๊น ๋ก๊ทธ๋ฅผ ์ถ๋ ฅํ๊ธฐ ์ํ Logger ํด๋์ค๋ฅผ ๋ง๋ค์ด์ ๊ด๋ฆฌํ๋๊ฑฐ์
ExpLogModel { id, current_exp, number, target_exp, created_time } ์ด๋ฐ์์ผ๋ก ๋ชจ๋ธ์ ๋ง๋ค์ด์ Logger ํด๋์ค๊ฐ ๋ชจ๋ธ์ ๋ฐ๊ณ ๊ทธ๊ฑธ ๋ฉ๋ชจ๋ฆฌ ๋ฒํผ์ ๊ธฐ๋กํ๊ฑฐ๋ ๋์คํฌ์ ์ฐ๊ณ ๋๊ฐ ์กฐํํ๊ณ ์ถ์ ๋ ๊บผ๋ด์ ๋ณด๊ฑฐ๋ ์๋๋ฉด ์ฝ์๋ก ์ถ๋ ฅํ๊ฑฐ๋
๋์ค์ ๊ฒ์์ ์ถ์ํ๋ฉด ๋ฒ๊ทธ๊ฐ ๋ ์๋ ์๋๋ฐ ๊ทธ๋ฌ๋ฉด ์ด์ ์ ์ ๊ฐ ์ด๋ค ์ํฉ์ด๋ผ ๋ฒ๊ทธ๊ฐ ๋๊ฑด์ง ๋์ด ์ง๊ธ ๋ก๊ทธ๋ฅผ ์ฐ์ด๋ณด๋๊ฒ์ฒ๋ผ ๋ฐ์๋ด์ผ ํ ์ ์์์? Logger ๋ฅผ ๋ง๋ค๋ฉด Logger ์์ LogTrackingClient ๊ฐ์ ํด๋์ค๊ฐ ๋ด์ฅ๋์ด์ ๋์ Log ์์ง ์๋ฒ๋ก ๋ก๊ทธ๋ฅผ ๋ชจ์๋ค๋๊ฐ..
์ค๊ณํ๊ธฐ ๋๋ฆ์
๋น์ฅ ๋ญ ์ด์ฉ๋ผ๋๊ฑฐ์ง ์ถ๊ณ ์ฒด๊ฐํ๊ธฐ ์ด๋ ต๋ค๋ฉด 1. ๋ด๊ฐ ํ์ธํด๋ณด๊ณ ์ถ์ ๊ฒ์์ ์ค์ํ ์ค๋ ์ท์ Log model ๊ตฌ์กฐ์ฒด๋ฅผ ๋ง๋ฌ 2. Log model ๊ตฌ์กฐ์ฒด์ ๋ํด์ Logger ํด๋์ค๋ ๋ง๋ฌ 3. ์ค์ string ์ ๋ง๋ค์ด์ console ์ ์ฐ๋ ์ฝ๋๋ Logger ํด๋์ค์์ ๊ด๋ฆฌ 4. ๊ฒ์ ๊ฐ์ฒด๋ค์ ํ์ํ Logger ๋ฅผ ํ๋๋ก ๊ฐ์ง๊ณ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ๋ฉด push_log ํจ์๋ก Log model ์ ์๋๋ค 5. ๋๊ฐ ์ํ ๋, ํน์ ํน์ ํ์ด๋ฐ๋ง๋ค ํ์ผ/์ฝ์ ๋ฑ์ผ๋ก ํ๋ฌ์ฌ๋ฅผ ํ๋ค ์ ๋๋ง ๋ง๋ค์ด์ ์จ๋ณด์
์ฌ๋ฐ๋๊ฒ ์ด Logger๋ ๊ฒฐ๊ตญ ๊ฒ์์์ ์ฌ์ฉํ๋ Event stream ๊ณผ ๊ต์ฅํ ์ ์ฌํ๋ค๋ ์ ์ ๊ฒ์ ์งํ ์ค ๋ค์ํ ์ด๋ฒคํธ๋ฅผ ๋ฐ์์ ๋ฉ์ง ์ดํํธ๋ฅผ ๋ฟ๋ฆฌ๊ฑฐ๋ ๊ฒ์ ๋ด ํจ๊ณผ๋ฅผ ๋ง๋ค๊ธฐ ์ํด์ Event ๋ฐ์ดํฐ๋ฅผ ์ถ์ํํ๊ณ ์ ์ํ์ํค๋๊ฒ ๊ฒฐ๊ตญ ์ค์ํ๋ค๊ณ ์๊ฐํด์
์น๊ณ ์.... ๋ฐฉ๊ธ ํํ ์ฐพ๊ธฐ๋ ํ๊ณ ์ด๊ฑฐ ๋ณด๊ณ ๊ทธ๋๋ ๋ง๋งํ๋ค.