Rumah >pembangunan bahagian belakang >Tutorial Python >Petua pembalakan dalam pembangunan web Python
Pengelogan adalah aspek yang sangat penting dalam pembangunan web Python. Melalui pengelogan, kami dapat memahami dengan lebih baik masalah dan peristiwa dalam aplikasi supaya kami dapat menyelesaikannya dalam masa dan mengoptimumkan kod.
Berikut ialah beberapa petua pengelogan dalam pembangunan web Python:
1. Gunakan pengelogan perpustakaan standard
Perpustakaan standard Python mengandungi pengelogan modul pengelogan. Dengan menggunakan pengelogan, kami boleh merekodkan peristiwa yang berlaku dalam aplikasi kami dengan mudah. Berikut ialah kod contoh mudah untuk menggunakan pengelogan untuk merekod log:
import logging logging.basicConfig(filename='example.log', level=logging.INFO) logging.info('This is an information message.') logging.warning('This is a warning message.') logging.error('This is an error message.')
Dalam contoh ini, kami mula-mula mengkonfigurasi pengelogan melalui fungsi basicConfig dan menetapkan nama fail log dan tahap log. Kemudian kami merekodkan tahap maklumat log yang berbeza melalui pembalakan. Maklumat log ini akan disimpan dalam fail example.log.
2. Tentukan tahap log
pengelogan menyediakan pelbagai peringkat kaedah pengelogan, termasuk DEBUG, INFO, AMARAN, RALAT dan KRITIKAL. Dengan menentukan tahap log yang berbeza, kami boleh mengawal output maklumat log dengan cara yang lebih terperinci. Sebagai contoh, kita boleh menetapkan tahap log kepada tahap AMARAN, maka hanya maklumat log AMARAN, RALAT dan KRITIKAL yang akan dikeluarkan. Berikut ialah contoh kod:
import logging logging.basicConfig(filename='example.log', level=logging.WARNING) logging.debug('This is a debugging message.') logging.info('This is an information message.') logging.warning('This is a warning message.') logging.error('This is an error message.') logging.critical('This is a critical message.')
Dalam contoh ini, kami menetapkan tahap log kepada tahap AMARAN. Oleh itu, hanya maklumat log peringkat AMARAN, RALAT dan KRITIKAL akan dikeluarkan kepada fail log.
3. Tentukan format log
Menggunakan modul pengelogan, kami juga boleh menyesuaikan format mesej log. Secara lalai, mesej log dikeluarkan dalam format tetap, termasuk cap masa, tahap log dan mesej log itu sendiri. Walau bagaimanapun, kami boleh menyesuaikan format log dengan mengubah suai format. Berikut ialah kod sampel:
import logging logging.basicConfig(filename='example.log', level=logging.INFO, format='%(asctime)s:%(levelname)s:%(message)s') logging.info('This is an information message.') logging.warning('This is a warning message.') logging.error('This is an error message.')
Dalam contoh ini, kami menyesuaikan format log melalui parameter format, termasuk cap masa, tahap log dan mesej log itu sendiri.
4. Putaran log
Dalam aplikasi web, fail log cenderung menjadi sangat besar. Jika tidak dibersihkan tepat pada masanya, ia akan menduduki banyak ruang cakera dan mungkin menyebabkan limpahan cakera. Oleh itu, dalam aplikasi web, selalunya perlu mengkonfigurasi putaran log untuk memastikan fail log tidak menjadi terlalu besar. Terdapat banyak cara untuk memutar log Kaedah yang paling biasa ialah memutar fail log secara berkala mengikut masa dan mengehadkan bilangan fail. Berikut ialah contoh kod:
import logging from logging.handlers import TimedRotatingFileHandler # create a timed rotating file handler handler = TimedRotatingFileHandler('example.log', when='midnight', backupCount=7) # set the handler's formatter formatter = logging.Formatter('%(asctime)s:%(levelname)s:%(message)s') handler.setFormatter(formatter) # get the logger object logger = logging.getLogger('') logger.addHandler(handler) logger.setLevel(logging.INFO) # log some messages logger.debug('This is a debugging message.') logger.info('This is an information message.') logger.warning('This is a warning message.') logger.error('This is an error message.') logger.critical('This is a critical message.')
Dalam contoh ini, kami mencipta TimedRotatingFileHandler dan menetapkannya untuk memutar fail log mengikut hari. Kami juga mengehadkan bilangan fail log dengan menetapkan parameter backupCount. Apabila mengelog maklumat, kami menambahkannya pada objek logger dan bukannya menggunakan fungsi basicConfig.
Ringkasan
Dalam pembangunan web Python, pengelogan merupakan aspek yang sangat penting. Dengan menggunakan modul pengelogan dengan betul, kami dapat memahami dengan lebih baik masalah dan peristiwa dalam aplikasi supaya kami dapat menyelesaikannya dalam masa dan mengoptimumkan kod. Beberapa teknik pengelogan disebutkan di atas, termasuk menggunakan pengelogan perpustakaan standard, menentukan tahap log, menentukan format log, dan putaran log. Setiap orang boleh memilih kaedah yang berbeza mengikut keperluan dan keadaan sebenar mereka sendiri.
Atas ialah kandungan terperinci Petua pembalakan dalam pembangunan web Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!