ການແກ້ໄຂບັນຫາ (Debugging) Weblate

ບັນຫາ (Bugs) ອາດຈະສະແດງອອກໃນຮູບແບບແອັບພລິເຄຊັນຄ້າງ ຫຼື ການເຮັດວຽກທີ່ຜິດປົກກະຕິ. ທ່ານສາມາດເກັບຂໍ້ມູນບັນຫາເຫຼົ່ານັ້ນ ແລະ ສົ່ງໄປຍັງ issue tracker.

ໂໝດແກ້ໄຂບັນຫາ (Debug mode)

ການເປີດໃຊ້ Debug mode ຈະເຮັດໃຫ້ຂໍ້ຜິດພາດຕ່າງໆສະແດງອອກໃນຕົວທ່ອງເວັບ (Web browser). ສິ່ງນີ້ມີປະໂຫຍດໃນການແກ້ໄຂບັນຫາໃນໜ້າເວັບ, ແຕ່ບໍ່ເໝາະສົມສຳລັບສະພາບແວດລ້ອມທີ່ໃຊ້ງານຈິງ (Production environment) ເພາະມັນສົ່ງຜົນກະທົບຕໍ່ປະສິດທິພາບ ແລະ ອາດເຮັດໃຫ້ຂໍ້ມູນສ່ວນຕົວຮົ່ວໄຫຼ.

ໃນສະພາບແວດລ້ອມທີ່ໃຊ້ງານຈິງ, ໃຫ້ໃຊ້ ADMINS ເພື່ອຮັບອີເມວລາຍງານຂໍ້ຜິດພາດ, ຫຼື ຕັ້ງຄ່າການເກັບກຳຂໍ້ຜິດພາດໂດຍໃຊ້ບໍລິການຂອງພາກສ່ວນທີສາມ.

ບັນທຶກການເຮັດວຽກ (Logs) ຂອງ Weblate

Weblate ສາມາດສ້າງບັນທຶກການເຮັດວຽກຢ່າງລະອຽດກ່ຽວກັບສິ່ງທີ່ເກີດຂຶ້ນຢູ່ເບື້ອງຫຼັງ. ໃນການຕັ້ງຄ່າເລີ່ມຕົ້ນ, ມັນຈະໃຊ້ syslog ເຊິ່ງເຮັດໃຫ້ບັນທຶກປາກົດຢູ່ໃນ /var/log/messages ຫຼື /var/log/syslog (ຂຶ້ນຢູ່ກັບການຕັ້ງຄ່າ syslog daemon ຂອງທ່ານ).

ຂະບວນການ Celery (ເບິ່ງ ວຽກງານເບື້ອງຫຼັງໂດຍໃຊ້ Celery) ປົກກະຕິແລ້ວກໍ່ຈະສ້າງບັນທຶກຂອງມັນເອງເຊັ່ນກັນ. ຕົວຢ່າງການຕັ້ງຄ່າທົ່ວລະບົບຈະບັນທຶກໄວ້ໃນຫຼາຍໄຟລ໌ພາຍໃຕ້ /var/log/celery/.

Docker containers ຈະບັນທຶກຜົນອອກທາງຜົນລັບ (ຕາມປົກກະຕິໃນໂລກຂອງ Docker), ດັ່ງນັ້ນທ່ານສາມາດເບິ່ງບັນທຶກໄດ້ໂດຍໃຊ້ຄຳສັ່ງ docker compose logs. ທ່ານສາມາດໄດ້ຮັບບັນທຶກທີ່ລະອຽດກວ່າໂດຍການປ່ຽນ WEBLATE_LOGLEVEL.

See also

ຕົວຢ່າງການຕັ້ງຄ່າ ມີການຕັ້ງຄ່າ LOGGING.

ບໍ່ດຳເນີນການວຽກຢູ່ເບື້ອງຫຼັງ

ຫຼາຍໆວຽກຖືກເຮັດຢູ່ເບື້ອງຫຼັງໂດຍ Celery workers. ຖ້າສິ່ງຕ່າງໆເຊັ່ນການສົ່ງອີເມວ ຫຼື ການລຶບອົງປະກອບບໍ່ເຮັດວຽກ, ອາດຈະມີບັນຫາທີ່ກ່ຽວຂ້ອງ.

ສິ່ງທີ່ຄວນກວດສອບໃນກໍລະນີນັ້ນ:

ບໍ່ໄດ້ຮັບອີເມວຈາກ Weblate

ທ່ານສາມາດຢືນຢັນໄດ້ວ່າການສົ່ງອີເມວອອກເຮັດວຽກຢ່າງຖືກຕ້ອງຫຼືບໍ່ໂດຍການໃຊ້ຄຳສັ່ງຈັດການ sendtestemail (ເບິ່ງ ການເອີ້ນໃຊ້ຄຳສັ່ງຈັດການ ສຳລັບຄຳແນະນຳໃນການໃຊ້ງານໃນສະພາບແວດລ້ອມຕ່າງໆ) ຫຼື ໂດຍການໃຊ້ ອິນເຕີເຟດການຈັດການ ພາຍໃຕ້ແຖບ Tools.

ຄຳສັ່ງເຫຼົ່ານີ້ສົ່ງອີເມວໂດຍກົງ, ສະນັ້ນມັນຈະຢືນຢັນວ່າການຕັ້ງຄ່າ SMTP ຂອງທ່ານຖືກຕ້ອງ (ເບິ່ງ ການຕັ້ງຄ່າອີເມວຂາອອກ). ແນວໃດກໍຕາມ, ອີເມວສ່ວນໃຫຍ່ຈາກ Weblate ຈະຖືກສົ່ງຢູ່ເບື້ອງຫຼັງ ແລະ ອາດມີບາງບັນຫາທີ່ກ່ຽວຂ້ອງກັບ Celery, ກະລຸນາເບິ່ງ ບໍ່ດຳເນີນການວຽກຢູ່ເບື້ອງຫຼັງ ສຳລັບການແກ້ໄຂບັນຫານັ້ນ.

ການວິເຄາະແອັບພລິເຄຊັນຄ້າງ/ຢຸດເຮັດວຽກ

ໃນກໍລະນີທີ່ແອັບພລິເຄຊັນຄ້າງ ຫຼື ຢຸດເຮັດວຽກ, ມັນມີປະໂຫຍດທີ່ຈະເກັບຂໍ້ມູນກ່ຽວກັບການຜິດພາດນັ້ນໃຫ້ໄດ້ຫຼາຍທີ່ສຸດ. ສິ່ງນີ້ສາມາດເຮັດໄດ້ໂດຍການໃຊ້ບໍລິການຂອງພາກສ່ວນທີສາມເຊິ່ງສາມາດເກັບຂໍ້ມູນດັ່ງກ່າວໂດຍອັດຕະໂນມັດ. ທ່ານສາມາດພົບຂໍ້ມູນກ່ຽວກັບວິທີການຕັ້ງຄ່າໄດ້ໃນ ການເກັບລາຍງານຂໍ້ຜິດພາດ ແລະ ການຕິດຕາມປະສິດທິພາບ.

ຂໍ້ຜິດພາດແບບບໍ່ສະແດງຜົນ (Silent failures)

ວຽກງານຈຳນວນຫຼາຍຖືກສົ່ງໄປໃຫ້ Celery ເພື່ອປະມວນຜົນໃນພື້ນຫຼັງ. ຂໍ້ຜິດພາດຈະບໍ່ສະແດງໃນສ່ວນຕິດຕໍ່ຜູ້ໃຊ້, ແຕ່ຈະປາກົດໃນບັນທຶກ (logs) ຂອງ Celery. ການຕັ້ງຄ່າ ການເກັບລາຍງານຂໍ້ຜິດພາດ ແລະ ການຕິດຕາມປະສິດທິພາບ ຈະຊ່ວຍໃຫ້ທ່ານສັງເກດເຫັນຂໍ້ຜິດພາດດັ່ງກ່າວໄດ້ງ່າຍຂຶ້ນ.

ບັນຫາດ້ານປະສິດທິພາບ

ໃນກໍລະນີທີ່ Weblate ເຮັດວຽກບໍ່ດີໃນບາງສະຖານະການ, ກະລຸນາເກັບກຳບັນທຶກທີ່ກ່ຽວຂ້ອງທີ່ສະແດງໃຫ້ເຫັນບັນຫາ, ແລະ ສິ່ງໃດກໍຕາມທີ່ອາດຊ່ວຍໃນການຊອກຫາຈຸດທີ່ລະຫັດສາມາດປັບປຸງໄດ້.

ເບິ່ງ ການເກັບລາຍງານຂໍ້ຜິດພາດ ແລະ ການຕິດຕາມປະສິດທິພາບ ສຳລັບຂໍ້ມູນກ່ຽວກັບການຕັ້ງຄ່າ Sentry ເຊິ່ງສາມາດໃຫ້ຂໍ້ມູນທີ່ເປັນປະໂຫຍດກ່ຽວກັບການດຳເນີນການທີ່ມີປະສິດທິພາບບໍ່ດີ.

ໃນກໍລະນີທີ່ປະສິດທິພາບຊ້າເຊື່ອມໂຍງກັບຖານຂໍ້ມູນ, ທ່ານຍັງສາມາດເປີດໃຊ້ການບັນທຶກການສອບຖາມ (queries) ຖານຂໍ້ມູນທັງໝົດໂດຍໃຊ້ການຕັ້ງຄ່າຕໍ່ໄປນີ້ຫຼັງຈາກເປີດໃຊ້ DEBUG:

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