판단을 먼저, 생성을 나중에

판단을 먼저, 생성을 나중에 A workflow diagram generated by Archify. 01 / 한 줄기로 합친 경로 02 / 출구 EX / 걸러지거나 막힐 때 호출과 판단 만들고 붙인다 내보낸다 여기서 끝나면 아무것도 만들지 않는다 호출부 · 채널 · 심각도 · 람다 · 한 줄기로 합친 경로 › 호출과 판단 호출부 채널 · 심각도 · 람다 허용 판단 · 만들기 전에 정한다 · 한 줄기로 합친 경로 › 호출과 판단 · 채널마다 기준이 다름 허용 판단 만들기 전에 정한다 채널마다 기준이 다름 페이로드 생성 · 이때 처음 평가된다 · 한 줄기로 합친 경로 › 만들고 붙인다 페이로드 생성 이때 처음 평가된다 이벤트 조립 · 시각 · 화면 · 빌드 종류 · 한 줄기로 합친 경로 › 만들고 붙인다 이벤트 조립 시각 · 화면 · 빌드 종류 하나의 출구 · 도메인이 아는 건 여기까지 · 한 줄기로 합친 경로 › 내보낸다 하나의 출구 도메인이 아는 건 여기까지 원격 수집 · 분석 · 크래시 보고 · 출구 › 내보낸다 원격 수집 분석 · 크래시 보고 로컬 출력 · 개발 중 바로 확인 · 출구 › 내보낸다 로컬 출력 개발 중 바로 확인 즉시 반환 · 만들지 않았으니 비용도 없다 · 걸러지거나 막힐 때 › 여기서 끝나면 아무것도 만들지 않는다 › 호출과 판단 즉시 반환 만들지 않았으니 비용도 없다 판단과 기록이 어긋남 · 개발 빌드에서만 잡는다 · 걸러지거나 막힐 때 › 여기서 끝나면 아무것도 만들지 않는다 › 만들고 붙인다 판단과 기록이 어긋남 개발 빌드에서만 잡는다 한 출구의 실패 · 나머지는 계속 간다 · 걸러지거나 막힐 때 › 내보낸다 한 출구의 실패 나머지는 계속 간다 막히면 요청 라벨이 다르면 통과 예외가 나도 복사해 전달 Legend Agent logic Policy Tool action Context / trace Cloud service External system

순서가 비용을 정한다

  • • 버릴 이벤트를 먼저 만들면 그 비용은 이미 치른 것이다
  • • 만들기 전에 판단하면 버릴 때 비용이 남지 않는다
  • • 대신 판단에 쓴 값과 실제 기록이 어긋날 수 있다

기준을 하나로 묶지 않는다

  • • 진단 로그를 줄이는 설정 하나가 분석 지표를 통째로 지울 수 있다
  • • 채널마다 기준을 따로 둔다
  • • 설정에 없는 채널은 막지 않고 통과시킨다

격리는 실패가 보이는 자리에

  • • 호출한 쪽은 전송 실패를 볼 수 없다
  • • 그래서 파사드의 예외 처리는 잡는 시늉만 한다
  • • 출구를 묶는 자리에서 하나의 실패를 가둔다