Weblate 디버깅¶
버그는 애플리케이션 충돌이나 다양한 잘못된 동작으로 나타날 수 있습니다. 스스로 정보를 수집하여 ` 이슈 트래커 <https://github.com/WeblateOrg/weblate/issues>`_ 에 제출할 수 있습니다.
디버그 모드¶
디버그 모드를 켜면 웹 브라우저에 예외가 표시됩니다. 웹 인터페이스의 문제를 디버깅하는 데 유용하지만 성능에 영향을 미치고 개인 데이터가 유출될 수 있으므로 프로덕션 환경에는 적합하지 않습니다.
프로덕션 환경에서는 ADMINS 를 사용하여 오류 보고가 포함된 이메일을 받거나 타사 서비스를 사용하여 오류 수집을 구성하세요.
Weblate 로그¶
Weblate는 백그라운드에서 진행되는 상황에 대한 상세한 로그를 생성할 수 있습니다. 기본 구성에서는 syslog를 사용하며 syslog 데몬 구성에 따라 로그가 /var/log/messages 또는 /var/log/syslog 에 나타납니다.
Celery 프로세스( Celery를 사용한 백그라운드 작업 참조)도 보통 자체 로그를 생성합니다. 시스템 전체 설정 예시에서는 /var/log/celery/ 아래의 여러 파일에 로그를 기록합니다.
Docker 컨테이너는 출력에 로그를 기록합니다(Docker 환경에서 일반적). 따라서 docker compose logs 를 사용하여 로그를 확인할 수 있습니다. WEBLATE_LOGLEVEL 을 변경하여 더 상세한 로그를 얻을 수 있습니다.
백그라운드 작업이 처리되지 않음¶
많은 작업이 Celery 워커에 의해 백그라운드에서 수행됩니다. 이메일 발송이나 구성요소 제거 등이 작동하지 않으면 관련 문제가 있을 수 있습니다.
이 경우 확인해야 할 사항:
Celery 프로세스가 실행 중인지 확인 ( Celery를 사용한 백그라운드 작업 참조)
관리 인터페이스 또는
celery_queues를 사용하여 Celery 큐 상태 확인Celery 로그에서 오류 확인 ( Weblate 로그 참조)
Weblate에서 이메일을 받지 못함¶
sendtestemail 관리 명령(다른 환경에서 호출하는 방법은 관리 명령 호출 참조) 또는 Tools 탭 아래의 관리 인터페이스 를 사용하여 발신 이메일이 올바르게 작동하는지 확인할 수 있습니다.
이 명령은 이메일을 직접 보내므로 SMTP 구성이 올바른지 확인할 수 있습니다 ( 발신 이메일 설정 참조). 그러나 Weblate에서 보내는 대부분의 이메일은 백그라운드에서 전송되므로 Celery와 관련된 문제가 있을 수 있습니다. 디버깅 방법은 백그라운드 작업이 처리되지 않음 를 참조하세요.
애플리케이션 충돌 분석¶
애플리케이션이 충돌하는 경우 충돌에 대한 가능한 많은 정보를 수집하는 것이 유용합니다. 이러한 정보를 자동으로 수집하는 타사 서비스를 사용하면 됩니다. 설정 방법은 오류 보고 수집 및 성능 모니터링 에서 확인할 수 있습니다.
조용한 실패¶
많은 작업이 백그라운드 처리를 위해 Celery로 분산됩니다. 실패는 사용자 인터페이스에 표시되지 않지만 Celery 로그에 나타납니다. 오류 보고 수집 및 성능 모니터링 를 구성하면 이러한 실패를 더 쉽게 알 수 있습니다.
성능 문제¶
Weblate가 일부 시나리오에서 성능이 나쁜 경우 문제를 보여주는 관련 로그와 코드를 개선할 수 있는 부분을 파악하는 데 도움이 될 수 있는 모든 것을 수집하세요.
성능이 나쁜 작업에 대한 유용한 분석을 제공할 수 있는 Sentry 설정에 대한 정보는 오류 보고 수집 및 성능 모니터링 를 참조하세요.
느린 성능이 데이터베이스와 관련된 경우 DEBUG 를 활성화한 후 다음 구성을 사용하여 모든 데이터베이스 쿼리의 로깅을 활성화할 수도 있음:
LOGGING["loggers"]["django.db.backends"] = {"handlers": ["console"], "level": "DEBUG"}