이 섹션에서는 앱 디버깅을 위해 서버 로그를 사용하는 방법에 대해 다룹니다.
- 디버거를 사용하면 현재 상황을 테스트하고 디버깅할 수 있지만 서버 로그를 사용하면 과거의 문제를 탐색할 수 있습니다.
- 이는 테스트 중에 변경한 결과를 확인하고 실제 사용자가 문제를 겪었을 때 실제로 무슨 일이 일어났었는지 확인하는 데 유용합니다.
Development 및 Live에 대한 서버 로그는 별개라는 점에 유의하세요.
버전 제어를 사용하여 사용자 정의 브랜치를 생성한 경우 해당 브랜치는 개발 및 라이브 환경에 포함되어 있습니다.
(2) 로그 검색 (Log Search)
로그를 검색하면 다음 제약 조건이 있는 로그 항목을 찾아볼 수 있습니다.
1. 기본 필터
1) Start / End Time (시작/종료 시간)
- 찾고 있는 이벤트의 시간 범위를 입력할 수 있습니다.
2) User`s Email(사용자 이메일)
- 이벤트를 시작한 사용자로 검색을 제한할 수 있습니다.
3) Contains(텍스트포함 검색)
- 워크플로 레이블(이름)을 검색하여 범위를 더 좁힐 수 있는 자유 텍스트 필드입니다.
2. 고급 필터
위의 기본 필터 외에도 Show advanced버튼을 클릭하면 확장된 필터 목록에 액세스 할 수 있습니다.
- 워크플로 실행을 시작했음
- Action 조건 실패
- 자동 바인딩 작업
- 예약된 작업이 완료
- 이메일 전송 실패
- 이벤트 조건 통과
- 완료된 실행 작업
- 플러그인 서버 측 출력
- HTTP 요청
- 이벤트 조건이 통과되지 않았음
- 실행 중인 워크플로가 완료
- 플러그인 서버 측 오류
- HTTP 응답
- 실행 중인 작업
- 워크플로 오류
- 실행되도록 예약된 작업
이러한 도구를 결합하면 검색을 구체화하고 문제에 초점을 맞추기 위한 포괄적인 도구 세트가 생성됩니다.
- 활동이 많은 앱을 검색하는 경우 로그를 검색하는 데 시간이 많이 걸릴 수 있으며 데이터 양이 너무 많으면 시간이 초과될 수 있습니다.
- 이러한 현상이 발생하는 경우 검색할 기간을 좁히는 것이 좋습니다.
3. 워크플로 확대
각 워크플로는 여러 단계의 로그로 구성됩니다.
- 하나의 이벤트
- 각 하나의 조건 (비어 있는 경우에도 해당)
- 각 Action 단계마다
제약 조건을 매우 구체적으로 지정하지 않는 한 대부분의 로그 검색은 긴 결과 목록을 반환합니다.(특히 활성 사용자가 있는 앱에서 검색하는 경우)
- 하나의 워크플로를 분리하고 해당 워크플로에 기록된 모든 단계를 보려면 이 워크플로 기능에 대한 Zoom(확대/축소)를 사용할 수 있습니다.
- 이 워크플로를 확대하면 워크플로를 분리하여 관련된 모든 단계를 더 쉽게 수행할 수 있습니다.
- 이메일이나 ID, 특정 날짜 내의 특정 사용자 또는 특정 키워드로 특정 사용자를 검색합니다.
- 서버 로그는 앱 버전에 따라 다르므로 문제가 보고된 버전(라이브 버전과 개발 버전)에 초점을 맞춰야 합니다.
- 로그를 검색하려면 검색 시작 날짜와 종료 날짜를 정의해야 합니다. 로그를 검색하는 데 시간이 걸릴 수 있으며, 항목이 검색되면 편집기에 항목이 표시됩니다.
- 일부 결과를 보고 아래로 스크롤하면 편집기가 더 많은 항목을 가져옵니다. (검색 버튼의 캡션은 상황에 따라 변경됩니다)
4. Advanced 기능으로 검색 범위 좁히기
검색 기준을 사용하여 검색 범위를 좁히는 것이 유용합니다. 로그를 검색할 때 사용할 수 있는 가장 일반적인 기준은 관심 있는 이벤트 유형을 선택하는 것입니다.
- 워크플로 시작: 조건 충족 및 워크플로 실행 여부에 관계없이 서버에서 실행되는 모든 시작된 워크플로를 표시합니다.
- 통과된 이벤트: 조건이 예시로 평가된 후 실행되는 모든 워크플로를 표시합니다.
- 통과되지 않은 이벤트: 조건이 ‘no’로 평가된 후 실행되지 않은 모든 워크플로를 표시합니다. 이는 발생하지 않은 일을 디버깅하려고 할 때 유용합니다.
- Action: Action만 표시하고 이 Action을 실행하게 만든 이벤트는 표시하지 않습니다.
- Error: 워크플로를 실행할 때 발생한 서버 측 오류를 표시합니다. 예를 들어 신용 카드 오류 또는 이메일 전송 실패 등이 있습니다. 이는 문제를 진단하는 데 특히 유용합니다.
5. 검색 팁
- 앱의 활동이 많으면 로그도 많을 가능성이 높습니다. 로그를 검색하는 중 쿼리가 느리거나 시간 초과된 경우 검색 시간 창을 좁혀보세요
- 로그를 검색할 때 문제가 있는 워크플로에 대한 추가 정보가 있는 경우 특정 사용자 및 용어를 검색하여 검색 범위를 더욱 좁힐 수 있습니다. 첫 번째 입력에서는 사용자의 이메일이나 사용자의 고유 ID를 입력할 수 있습니다. 이 항목이 채워지면 이 사용자가 시작한 워크플로만 검색됩니다.
- 마지막 상자에서는 검색하려는 문자열을 입력할 수 있습니다. 작업에 일부 텍스트로 평가되는 속성이 있고 이 텍스트를 검색하면 워크플로가 검색됩니다. 예를 들어 'Boston'이라는 텍스트가 포함된 이메일이 전송된 것을 알고 있는 경우 'Boston'을 검색하면 이메일 보내기 작업이 반환됩니다.
(3) 결과 살펴보기
결과가 검색된 후 내림차순으로 표시되며 가장 최근 항목이 먼저 표시됩니다.
각 항목에 대해 다음 세부정보가 표시됩니다.
- 작업/이벤트 이름 : 이 이름은 워크플로의 작업/이벤트에 대한 레이블을 반영
- 사용자 이메일: 워크플로를 시작한 사용자의 이메일입니다. 사용자가 가입하지 않은 경우 필드에 익명 사용자가 표시
- 사용자 ID: 워크플로를 시작한 사용자의 고유 ID
- 타임스탬프: 기록된 이벤트/작업의 날짜 및 시간
- 메시지/속성 : 이 이벤트/작업에 대한 속성 또는 오류 메시지
(4) 해당 워크플로우 이동
로그에서 단계를 클릭하면 해당 로그 항목의 관련 이벤트나 Action에 대한 워크플로 편집기로 바로 이동됩니다.
이벤트나 작업을 클릭하면 워크플로 편집기의 관련 항목으로 바로 이동됩니다.
'버블 개발 > 중급' 카테고리의 다른 글
105. DATA API endpoint (중급) : endpoint 의미와 URL형식 (0) | 2023.08.30 |
---|---|
104. Data API & Privacy rule (중급) : 버블의 데이터 API 활성화, 데이터 보호규칙 설정 (0) | 2023.08.29 |
101. 버블 debugger (중급) : 디버거 모드 활성화, 워크플로 검사, 요소 검사 (0) | 2023.08.28 |
100. 앱 테스트와 디버깅 (중급): 테스트와 디버깅 조언, 버블 안전모드 사용 (0) | 2023.08.28 |
99. Page SEO (중급) : 동적으로 URL 주소 만들기, slug 설정, meta data 설정 (0) | 2023.08.26 |