회고

[개발일지] - 506

Happy Programmer 2024. 11. 20. 23:44

오전에 출근하자마자 다른 인터페이스 관련 에러 확인 요청이 왔는데

파일 전송 시스템 부분인데 Mapping Error 부분이었기 때문에

전송된 내용에 문제가 발생한 것으로 추정됐다.

 

일단 로그에는 해당 내용이 찍혀 있지 않아서 로그가 찍히기 이전에

잘못된 데이터가 들어와서 로그에 응답값이 입력되지 않은 것 같은데

확인하던 도중 자바서버 담당자분께서 고객사쪽에서 에러메세지가 반환되었기 때문에

실제로 처리되지 않아서 해당 전송 결과값이 포맷과 맞지 않아 에러가 발생한 것이라고 알려주셨고

추가로 확인할 필요가 없어졌기 때문에 해당 Asset들만 전송완료처리를 수동으로 해줬다.

 

어드민분이 주 고객사쪽 문의사항에 관해서 다시 문의를 주셨기 때문에

이번에는 조금 더 자세하게 설명드렸는데

그 사이에 조건이 달라져서 어제 결론지었던 것 보다 효율적인 내용이 나와서 만족스러웠다.

 

잠깐 남은 시간에 자바서버를 또 확인하려고 헀는데

자바서버 인터페이스 관련 회의에 참여하라는 안내가 와서 갑작스럽게 참여헀고

관통 테스트 및 작업을 빨리 했으면 좋겠다고 하셨기 때문에 부랴부랴 자바서버를 더 열심히 보기로 했다.

 

일단 자바서버가 제대로 인터페이스를 수신하는지 테스트해야 했는데

내부망이기 때문에 VPN을 사용해서 postman으로 작성해서 발송한 결과

정상적으로 인터페이스가 진행될 때 나오는 에러메세지를 받을 수 있었기 때문에

자바서버는 postman 또는 내부망에서 발송하는 데이터를 정상적으로 수신할 수 있다는 확신을 할 수 있었다.

 

자바서버 기본 코드들을 각자 해석하며 라인별로 주석을 달아서 기능이해하는 작업을 마무리하고

중간에 팀원분이 배치 관련 문의를 하셔서 같이 확인하면서

너무 대량의 데이터라 로그를 찍어도 해당 부분을 찾기 어려운 상태라면

특정 에러 조건이 발생하는지 내부에서 체크한 다음

그 데이터들이 포착되는 시점에 해당 레코드 아이디를 메일로 발송하라고 안내드렸는데

한참 뒤 아쉽지만 메일은 정상적으로 도착했지만 결과는 에러가 발생하는 값들만 넘어오고

실제로는 추가 데이터까지 포함되어 출력된다고 하셔서 해결할 수 없었다.

 

자바서버 수신, 발송용 코드를 생성하려고 헀는데

일단 수신용 코드는 생성했지만

발송용 코드를 생성하려고 하니 토큰 등의 설정이 필요해보였고

기존에 존재하는 자바서버의 경우 통으로 인터페이스를 관리하고 있어서

다른 계정을 사용하려면 인터페이스 외적인 부분들도 많이 건드려야 해서 일단 손이 가지 않았다.

 

오후 3시에는 Hyperforce Migration 관련 파트너 세션에 참여헀는데

내용이 상당히 유사한 것들이 많고(url 등에 하드코딩이 되는 경우 수정해줘야 에러가 나오지 않는다)

요즘 잠을 잘 못자기도 하고 목소리도 낮으면서 천천히 말씀하셔서 상당히 졸렸다.

 

중간에 팀장님만 알고 있는 자바서버 마스터데이터가 있다고 해서 문의를 잠깐 팀즈로 보냈는데

팀장님이 전화까지 해서 알려주려고 하셔서 상당히 힘이 됐지만

아쉽게도 다른 Org의 인터페이스였고 거기에 나는 수신처리지만 해당 코드는 발신용이라고 하셨기 때문에

일단 되는대로 작동만 하는 코드라도 경험삼아 해본 다음

나중에 팀장님이 회사로 복귀하시면 그때 어떤 부분을 어떻게 수정해야 하는지 더 알아보기로 헀다.

 

저녁식사 후 자바서버 코드를 확인하면서

등록되어야 하는 부분과 일부 코드를 수정했지만

사실 자바서버라고 하기에는 자바코드만 확인하고 있었고

어떻게 자바서버를 키고 끄는지

어떻게 자바서버에 코드를 반영해서 테스트 할 수 있는지 모르고 있었기 때문에

내일 나머지를 마무리하기로 하고 8시 40분쯤 퇴근했다.

 

 

(1).백준 18414번 X に最も近い値 (The Nearest Value)는 지정된 숫자와 가장 가까운 숫자를 범위 내에서 구해야 하는 문제였다.

 

일단 범위 밖에 있는 경우 최소값보다 작으면 무조건 최소값이고

범위 밖에 있으면서 최소값보다 크면 최대값으로 출력해야 하며

범위 내부일 때는 지정된 숫자를 출력하면 되기 때문에 조건문으로 해당 내용을 출력해줬다.

const [target, start, end] = `8 10 10`.split(' ').map(Number)

if(target <= start){
    console.log(start)
}
else if(target >= end){
    console.log(end)
}
else{
    console.log(target)
}