Bagaimana untuk mengkonfigurasi log penghantaran e-mel dalam Python?

PHPz
Lepaskan: 2023-04-26 17:28:08
ke hadapan
1662 orang telah melayarinya

Bagaimana untuk mengkonfigurasi log penghantaran e-mel dalam Python?

Seseorang bertanya dalam kumpulan beberapa hari lalu dan mengatakan sesuatu tentang log penghantaran e-mel konfigurasi Python Saya rasa ia cukup berpengetahuan, jadi saya akan merekodkannya di sini supaya saya boleh mengelak perangkap di masa hadapan.

  • Kami boleh menggunakan kaedah logging.handlers.SMTPHandler Python untuk menghantar log ke peti mel yang ditentukan. Saya pernah menggunakan 163 parameter konfigurasi peti mel sebelum ini dan saya boleh menggunakannya dengan yakin, tetapi apabila saya menggunakan peti mel korporat QQ, saya terus mendapat ralat, selalu mengatakan bahawa log masuk telah tamat masa.

Bagaimana untuk mengkonfigurasi log penghantaran e-mel dalam Python?

Akhirnya, saya menemui sebabnya dengan membaca kod sumber pengelogan menyokong sambungan TLS secara lalai.

Bagaimana untuk mengkonfigurasi log penghantaran e-mel dalam Python?

  • Akhir sekali, konfigurasi mudah dilampirkan
# logging.conf完整配置
[loggers]
keys=root,test
[handlers]
keys=consoleHandler,fileHandler,testHandler
[formatters]
keys=simpleFormatter
[formatter_simpleFormatter]
format=%(asctime)s - %(name)s - %(levelname)s - %(message)s - [%(filename)s:%(lineno)s]
datefmt=
[logger_root]
level=INFO
handlers=consoleHandler,fileHandler
[logger_test]
level=INFO
handlers=testHandler
qualname=test
propagate=0
[handler_consoleHandler]
class=StreamHandler
level=INFO
formatter=simpleFormatter
args=(sys.stdout,)
[handler_fileHandler]
class=FileHandler
level=INFO
formatter=simpleFormatter
args=('log/spider_db.log', 'a')
[handler_testHandler]
class=handlers.SMTPHandler
level=INFO
formatter=simpleFormatter
args=(('smtp.163.com',25), 'username@163.com', ['somebody01@example.com','somebody02@example.com'], 'Test SMTPHandler', ('username', 'password'))
python
# 邮件测试例子
import logging
import logging.config
logging.config.fileConfig("logging.conf")
logger = logging.getLogger('test')
logger.info('hello body ~')
Salin selepas log masuk


Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi log penghantaran e-mel dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:51cto.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!