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 แบบเป็นโปรแกรม โปรดเรียกบรรทัดข้างต้นก่อนที่ไคลเอ็นต์จะเริ่มต้น

ระดับบันทึก

ไคลเอ็นต์จะสร้างบันทึกในระดับต่างๆ และคุณสามารถตั้งค่าการกำหนดค่าเพื่อดูบางรายการหรือทั้งหมดด้านล่างนี้

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

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

กำลังบันทึกไปยังไฟล์

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

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

ตัวตรวจจับการบันทึก

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