Logging

คุณสามารถกําหนดค่าไลบรารีให้บันทึกการโต้ตอบกับ Google Ads API ได้หลายวิธี คุณสามารถบันทึกคําขอและการตอบกลับอย่างละเอียด รวมถึงข้อความสรุปที่กระชับมากขึ้น การตั้งค่าเหล่านี้จัดการโดยการกําหนดค่าคลังไลบรารีไคลเอ็นต์ ด้านล่างนี้คือรายละเอียดเกี่ยวกับตัวเลือกการกำหนดค่าประเภทต่างๆ ที่มีให้ใช้งาน

ไลบรารีนี้ใช้เฟรมเวิร์กการบันทึกในตัวของ Python และบันทึกลงใน stderr โดยค่าเริ่มต้น หากรวมไว้ ระบบจะส่งออบเจ็กต์ logging ที่กําหนดไว้ในการกําหนดค่าไปยัง logging.config.dictConfig โดยตรงเป็น dict

นอกจากนี้ คุณยังกําหนดค่าการบันทึกแบบเป็นโปรแกรมได้โดยการตั้งค่าการบันทึกก่อนเริ่มต้นใช้งานไคลเอ็นต์ คุณสามารถเรียกข้อมูลอินสแตนซ์บันทึกของไคลเอ็นต์และกําหนดค่าโดยใช้ตัวอย่างต่อไปนี้

import logging
logging.basicConfig(level=logging.INFO, format='[%(asctime)s - %(levelname)s] %(message).5000s')
logging.getLogger('google.ads.googleads.client').setLevel(logging.INFO)

โปรดทราบว่าระบบจะกําหนดค่าโปรแกรมบันทึกเหตุการณ์ไคลเอ็นต์เมื่อเริ่มต้นไคลเอ็นต์ ระบบจะไม่สนใจการเปลี่ยนแปลงการกําหนดค่าการบันทึกในภายหลัง หากต้องการลบล้างการกำหนดค่าการบันทึกในไฟล์ YAML ด้วยโปรแกรม โปรดเรียกใช้บรรทัดข้างต้นก่อนการเริ่มต้นใช้งานไคลเอ็นต์

ระดับบันทึก

ไคลเอ็นต์จะสร้างบันทึกในระดับต่างๆ 2-3 ระดับ และคุณสามารถตั้งค่าการกําหนดค่าเพื่อดูข้อมูลด้านล่างบางส่วนหรือทั้งหมดได้

ระดับ คำขอสำเร็จ คำขอไม่สำเร็จ
DEBUG บันทึกแบบละเอียดที่มีออบเจ็กต์คำขอและการตอบกลับที่สมบูรณ์ในรูปแบบ JSON บันทึกแบบละเอียดที่มีออบเจ็กต์คำขอและข้อยกเว้นที่สมบูรณ์ในรูปแบบ JSON
INFO สรุปที่กระชับพร้อมช่องคำขอและการตอบกลับที่เฉพาะเจาะจง บันทึกแบบละเอียดที่มีออบเจ็กต์คำขอและข้อยกเว้นที่สมบูรณ์ในรูปแบบ JSON
WARNING ไม่มี สรุปที่กระชับพร้อมข้อมูลคําขอที่เฉพาะเจาะจง สถานะข้อยกเว้น และข้อความ

เนื่องจากเฟรมเวิร์กการบันทึกของ Python จะไม่สนใจข้อความบันทึกที่รุนแรงน้อยกว่าระดับที่กำหนดค่าไว้ การตั้งค่าเป็น WARNING หมายความว่าคุณจะเห็นเฉพาะข้อความสั้นๆ ที่เกี่ยวข้องกับคำขอที่ไม่สำเร็จ แต่การตั้งค่าเป็น DEBUG หมายความว่าคุณจะเห็นบันทึกทุกประเภทที่เป็นไปได้ในตารางด้านบน

การบันทึกลงในไฟล์

คุณสามารถส่งข้อความบันทึกไปยังไฟล์ได้ง่ายๆ เช่น เมื่อเรียกใช้ตัวอย่าง get_campaigns ต่อไปนี้

python get_campaigns.py -c $CLIENT_ID 2> example.log

Interceptor การบันทึก

ไลบรารีไคลเอ็นต์ Python ใช้ Interceptor ของ gRPC เพื่อเข้าถึงและบันทึกรายละเอียดคำขอและคำตอบ คุณตั้งค่าการบันทึกที่กำหนดเองได้โดยใช้การสร้างตัวขัดจังหวะ gRPC ที่มีตรรกะที่กำหนดเอง ดูรายละเอียดเพิ่มเติมและตัวอย่างของอินเตอร์เซปเตอร์การบันทึกที่กำหนดเองได้ที่คู่มือการบันทึก