로그 찍는것 관련 질문있습니다

저희가 로그를 구현하려고 하는데
어떤 유저가 특정 액션을 했는데 데이터가 롤백되어있다 같은 문의 대응을 위해서
로그설계를 했는데요

아이템 강화를 예로 들겠습니다

아이템 강화를 시도할 때
현재 아이템의 상태와 함께 로그를 한번 찍고

트랜잭션으로 DB에 업로드한것이 성공했을 때
변한 아이템의 상태를 함께 로그를 쏴서

아이템 강화시도의 로그는 찍혀있는데
트랜잭션 업로드성공 로그가 안찍혀있다 == 오류이다

이런 케이스를 판별하고자 하는데

로그 설계시 비용적인 부분때문에 질문드립니다

  1. 해당 로그 설계형태가 저희가 원하는 기능에 가장 최적화된 설계방식인지
    좀 더 효율적으로 로그를 찍을 수 있는 방법이 있을지 궁금합니다.

  2. 가격 정책을 보면 로그 n회당 x원 같은 방식으로 요금 산정이 되던데 그러면 로그에 데이터를 많이실으나 적게실으나 n회당 가격은 똑같나요? 만약 똑같으면 데이터가 많이 있을때 추후에 비용적으로 부담가는 부분이 있을까요?

  3. 혹시 로그기능을 너무 남발하거나 잘못 구현돼서 로그비용이 과도하게 많이 나온 케이스가 있나요?

안녕하세요, 개발자님.

  1. 아이템 상태를 먼저 로그 저장하고 이후 실패를 저장하기 보다는,
    [현재 아이템 상태 + 성공 후 아이템 상태] 혹은 [현재 아이템 상태 + 트랜잭션 실패 정보] 와 같이 현재 아이템 상태를 캐싱하여 결과값을 함께 저장하는 것을 추천합니다.
  2. 3.요금은 호출비용 + DB 처리량, 그리고 스토리지 / 백업 비용으로 발생하기에, 로그 저장에 있어서도 꼭 필요한 정보 및 기간으로 최소화해 저장하는 것을 추천합니다.
좋아요 1