목록2025/03 (3)
임도현의 성장

📌테스트 코드 왜 작성해야 해?축구 게임을 만들었다고 생각해 보자, 우리 공격수가 상대방 골대에 골을 넣었는데 우리팀 점수가 올라가야 하는데 상대팀 점수가 올라가는 버그가 생겼어 이 문제를 수정하기 위해 매번 직접 실행해서 확인 하면 시간도 많이 걸리고, 실수도할 수 있잖아 이때 테스트 코드는 한번의 실행으로 우리팀 점수가 올랐는지 확인 할 수 있고, 리팩토링이나 코드를 수정했을 때 동작이 잘 됬는지 확인도 할 수 있어 😧테스트 코드의 특징버그 예방 및 조기 발견: 개발 중 작성한 코드가 예상대로 작동하는지 즉시 확인할 수 있으며, 버그를 조기에 발견하고 수정할 수 있습니다.리팩토링의 안전성 확보: 코드 리팩토링을 할 때 기존 기능의 동작이 변하지 않았는지 확인할 수 있어, 코드 변경이 다른 부분에 ..

👀로그 수집하는 이유제가 이전 프로젝트에서 배포를 했을 때 프로그램에 문제가 생겼는데 로그를 확인 할려면 EC2에 접속해 로그 파일에 접속해서 로그를 하나하나 확인을 했다. 하지만 모니터링에 로그를 수집하면 error 정보만 볼 수 있게 할 수 있어 원인을 빠르게 파악하고 문제를 해결 할 수 있게 만들어 보기 위해 사용하였습니다. 🦖Promtail이란? Promtail은 로그 수집기로, 주로 Loki와 함께 사용됩니다. Promtail은 로그 파일을 읽고, 그 내용을 규칙에 맞게 처리하여 로그 데이터를 수집한 뒤 Loki에 전달하는 역할을 합니다. 🥐Loki란? Loki는 로그 수집 및 저장 시스템으로, Grafana와 함께 사용됩니다. Loki는 로그 데이터를 시계열 데이터로 처리하여 로그를 빠르..

🍪파이프라인 구축 왜 해야 해?처음에는 직접 EC2에 접속해서 git pull하고 JAR파일을 직접 실행 하다가 코드가 수정 될 때 마다 계속 접속해서 명령어 쳐 주는게 귀찮아서, 쉘 스크립트를 도입해서 반복 작업을 줄이다가 이것도 귀찮아서 git에 push만 하면 자동으로 배포 되게 하기 위해 CI/CD 파이프라인을 구축해서 완전 자동화를 구현 해 볼려고 해 🤖CI/CD 란?CI는 Continuous Integration 지속적 통합으로 개발자들이 코드를 중앙 저장소에 통합 문제를 최소화하고 코드 변경이 일어날 때 마다 자동으로 빌드 및 테스트가 실행되어 문제가 있는지 즉시 확인할 수 있다. CD는 Continuous Deployment 지속적 배포로 CI를 통과한 이후 자동으로 운영 서버에 배포..