Weblate hatalarını ayıklamak

Hatalar, uygulama çökmelerine veya çeşitli yanlış davranışlara yol açabilir. Böyle bir sorun ile ilgili bilgi toplayabilir ve sorun izleyici üzerine gönderebilirsiniz.

Hata ayıklama kipi

Hata ayıklama kipinin açılması, özel durumların tarayıcıda görüntülenmesini sağlar. Bu kip, site arayüzündeki sorunları ayıklamak için yararlıdır. Ancak başarımı olumsuz etkilediğinden ve kişisel verileri sızdırabileceğinden üretim ortamı için uygun değildir.

Üretim ortamında, hata raporları ile ilgili e-postaları almak için ADMINS komutunu kullanın ya da bir üçüncü taraf hizmeti kullanarak hata toplamayı yapılandırın.

Weblate günlükleri

Weblate, arka planda neler olup bittiği ile ilgili ayrıntılı günlükler tutabilir. Varsayılan yapılandırmada syslog kullanılır ve bu da günlüğün /var/log/messages veya /var/log/syslog içinde tutulmasını sağlar (syslog daemon yapılandırmanıza bağlı olarak).

Celery işlemi (ayrıntılı bilgi almak için: Celery ile arka plan görevlerini kullanmak) genellikle kendi günlüklerini de tutar. Örnek sistem genelindeki kurulumlarda günlükler /var/log/celery/ altındaki birkaç dosyaya kaydedilir.

Docker kapsayıcıları çıktılarını günlüğe kaydeder (Docker dünyası için her zaman olduğu gibi). Bu günlüklere docker-compose logs komutuyla bakabilirsiniz. Günlük ayrıntı düzeyini WEBLATE_LOGLEVEL seçeneği ile değiştirebilirsiniz.

Ayrıca bakınız

Örnek yapılandırma içinde LOGGING yapılandırması bulunur.

Arka plan görevleri yapılamıyor

Celery işlemleri tarafından arka planda birçok şey yapılır. E-posta gönderme ya da bileşen kaldırma gibi işlemler yapılmıyorsa, bununla ilgili bir sorun olabilir.

Bu durumda şunlar denetlenmelidir:

  • Celery işleminin çalışıp çalışmadığını denetleyin. Ayrıntılı bilgi almak için: ref:celery

  • Celery kuyruğunun durumunu Yönetim arayüzü içinden ya da celery_queues komutuyla denetleyin

  • Hatalar için Celery günlüklerine bakın (ayrıntılı bilgi almak için: Weblate günlükleri)

Weblate e-postaları alınamıyor

Giden e-postanın düzgün çalışıp çalışmadığını sendtestemail yönetim komutuyla (farklı ortamlarda nasıl çağrılacağı ile ilgili bilgi almak için: Yönetim komutlarını çağırmak) ya da Araçlar sekmesi altındaki Yönetim arayüzü komutuyla doğrulayabilirsiniz.

Bunlar e-postaları doğrudan gönderir. Böylece SMTP yapılandırmanızın doğru olduğunu doğrular (ayrıntılı bilgi almak için: Giden e-postayı yapılandırmak). Bununla birlikte, Weblate üzerinden gelen e-postaların çoğu arka planda gönderilir ve Celery ile ilgili bazı sorunlar da olabilir. Hata ayıklama için Arka plan görevleri yapılamıyor bölümüne bakabilirsiniz.

Uygulama çökmelerini incelemek

Uygulamanın çökmesi durumunda, çökme ile ilgili olabildiğince fazla bilgi toplamak yararlıdır. Bunun için, bu tür bilgileri kendiliğinden toplayabilen üçüncü taraf hizmetleri kullanılabilir. Nasıl ayarlanacağı ile ilgili bilgi almak için Hata raporlarını toplamak ve başarımı izlemek.

Sessiz hatalar

Arka plan işleme için birçok görev Celery üzerine aktarılmıştır. Hatalar kullanıcı arabiriminde görüntülenmez, ancak Celery günlüklerinde görünür. Hata raporlarını toplamak ve başarımı izlemek komutunu yapılandırmak, bu tür hataları daha kolay fark etmenizi sağlar.

Başarım sorunları

Bazı senaryolarda Weblate başarımı kötü oluyorsa, sorunu gösteren günlük kayıtlarını ve kodun nasıl geliştirilebileceğini anlamamıza yardımcı olabilecek her şeyi toplayın.

Bazı isteklerin herhangi bir belirti olmadan çok uzun sürmesi durumunda, Hata raporlarını toplamak ve başarımı izlemek ile birlikte dogslow kurmak ve hata toplama aracında kesin ve ayrıntılı geri izlemeler almak isteyebilirsiniz.

Yavaş başarımın veri tabanına bağlı olması durumunda, DEBUG komutunu kullanıma aldıktan sonra aşağıdaki yapılandırmayı kullanarak tüm veri tabanı sorgularının günlüğe kaydedilmesini de sağlayabilirsiniz:

LOGGING["loggers"]["django.db.backends"] = {"handlers": ["console"], "level": "DEBUG"}