เปิดใช้การบันทึก

ไลบรารีนี้มีการบันทึกที่หลากหลายสำหรับการโต้ตอบกับ Google Ads API คุณสามารถบันทึกข้อมูลต่อไปนี้ได้

  • ข้อมูลโดยละเอียด: คำขอทั้งหมดที่ส่งไปยัง API และคำตอบที่ได้รับ
  • สรุปแบบกระชับ: ภาพรวมระดับสูงของการโต้ตอบ

และคุณควบคุมการตั้งค่าการบันทึกเหล่านี้ได้ 2 วิธี ดังนี้

  • การกําหนดค่าไลบรารีไคลเอ็นต์: ใช้ตัวเลือกการกําหนดค่าเฉพาะของไลบรารี
  • โดยใช้โปรแกรมกับ Python: ใช้เฟรมเวิร์กการบันทึกในตัวของ Python เพื่อการควบคุมโดยตรงมากขึ้น

ระบบจะกําหนดค่าการบันทึกโดยอัตโนมัติเมื่อเริ่มต้นอินสแตนซ์ GoogleAdsClient ขั้นตอนเริ่มต้นนี้จะเกิดขึ้น เช่น เมื่อคุณใช้เมธอด load_from_storage เมื่อถึงจุดนี้ ห้องสมุดจะดำเนินการดังนี้

  • อ่านการตั้งค่าการบันทึกที่ระบุจากการกําหนดค่า
  • ส่งการตั้งค่าเหล่านี้ไปยัง logging.config.dictConfig ในตัวของ Python เพื่อเปิดใช้งาน

เมื่อใช้ไลบรารีนี้เป็นแพ็กเกจที่ติดตั้ง คุณต้องผสานรวมการบันทึกของไลบรารีนี้เข้ากับการตั้งค่าการบันทึกของแอปพลิเคชัน กล่าวโดยละเอียดคือ คุณต้องเพิ่มตัวแฮนเดิลการบันทึกลงในอินสแตนซ์บันทึกของไลบรารีด้วยเมธอด addHandler แฮนเดิลนี้จะกำหนดตำแหน่งที่จะส่งข้อความบันทึกของไลบรารี (เช่น ไปยังคอนโซล ไฟล์ ฯลฯ) โดยให้ดึงข้อมูลอินสแตนซ์บันทึกของไลบรารีก่อนดังที่แสดงที่นี่

import logging

logger = logging.getLogger('google.ads.googleads.client')

หลังจากดึงข้อมูลบันทึกของไลบรารีแล้ว คุณสามารถบอกตำแหน่งที่จะแสดงข้อความบันทึกได้

  • การส่งบันทึกไปยังคอนโซล: หากต้องการแสดงข้อความบันทึกในคอนโซล ให้เพิ่มตัวแฮนเดิลพื้นฐาน วิธีกําหนดให้บันทึกไปยังเอาต์พุตมาตรฐาน (stdout) มีดังนี้

    วิธีตั้งค่าตัวแฮนเดิลพื้นฐานที่จะบอกโปรแกรมบันทึกให้พิมพ์ไปยัง stdout มีดังนี้

    import sys
    
    # Assuming 'logger' was retrieved as per previous instructions
    logger.addHandler(logging.StreamHandler(sys.stdout))
    

    หากต้องการส่งบันทึกไปยังข้อผิดพลาดมาตรฐาน (stderr) ซึ่งมักใช้สำหรับข้อความแสดงข้อผิดพลาดและคําเตือน ให้ทำดังนี้

    import sys
    
    # Assuming 'logger' was retrieved as per previous instructions
    logger.addHandler(logging.StreamHandler(sys.stderr))
    
  • การกำหนดการตั้งค่าการบันทึกอื่นๆ โดยใช้โปรแกรม: เมื่อคุณมีออบเจ็กต์บันทึกแล้ว คุณยังเปลี่ยนการตั้งค่าการบันทึกอื่นๆ โดยใช้โปรแกรมได้ด้วยโดยใช้โมดูลการบันทึกในตัวของ Python ตัวอย่างเช่น หากต้องการเปลี่ยนระดับการบันทึกเป็น DEBUG (ซึ่งจะแสดงข้อความโดยละเอียดมากขึ้น) ให้ทำดังนี้

    logger.setLevel(logging.DEBUG)
    

ระดับบันทึก

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

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

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

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

เมื่อคุณเรียกใช้สคริปต์ตัวอย่าง เช่น get_campaigns.py จากบรรทัดคำสั่ง ข้อความบันทึกที่ปกติจะแสดงในคอนโซลจะเปลี่ยนเส้นทาง (หรือ "ส่งผ่าน") ไปยังไฟล์ได้ นี่เป็นฟีเจอร์ของเชลล์ในระบบปฏิบัติการ ไม่ใช่ไลบรารี Python โดยทำดังนี้

วิธีบันทึกเอาต์พุตมาตรฐาน (บันทึกส่วนใหญ่) ไปยังไฟล์ (เขียนทับ)

python get_campaigns.py -c $CLIENT_ID > campaign_logs.txt

วิธีเพิ่มเอาต์พุตมาตรฐานต่อท้ายไฟล์

python get_campaigns.py -c $CLIENT_ID >> campaign_logs.txt

วิธีบันทึกทั้งเอาต์พุตมาตรฐานและข้อผิดพลาดมาตรฐาน (สำหรับข้อผิดพลาด/คำเตือน) ลงในไฟล์เดียวกัน

python get_campaigns.py -c $CLIENT_ID > all_logs.txt 2>&1

(หรือในเชลล์สมัยใหม่บางรุ่น เช่น Bash 4 ขึ้นไป)

python get_campaigns.py -c $CLIENT_ID &> all_logs.txt

Interceptor การบันทึก

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