تفعيل التسجيل

توفّر المكتبة تسجيلًا متعدد الاستخدامات لتفاعلات Google Ads API. يمكنك تسجيل ما يلي:

  • معلومات مفصّلة: الطلبات الكاملة المرسَلة إلى واجهة برمجة التطبيقات والردود التي تم تلقّيها
  • ملخّصات موجزة: نظرة عامة عالية المستوى على التفاعلات

ويمكنك التحكّم في إعدادات التسجيل هذه بطريقتَين:

  • إعداد مكتبة العميل: استخدِم خيارات الإعدادات الخاصة بالمكتبة بالمكتبة.
  • برمجيًا باستخدام Python: استخدِم إطار عمل التسجيل المضمّن في Python للتحكّم بشكلٍ مباشر أكثر.

يتم ضبط التسجيل تلقائيًا عند تهيئة مثيل GoogleAdsClient. تحدث خطوة التهيئة هذه، على سبيل المثال، عند استخدام طريقة load_from_storage. في هذه المرحلة، ستنفّذ المكتبة ما يلي:

عند استخدام هذه المكتبة كحزمة مثبَّتة، عليك دمج تسجيلها مع إعدادات التسجيل في تطبيقك. على وجه التحديد، يجب إضافة معالج تسجيل إلى مثيل مسجِّل المكتبة باستخدام طريقة 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)
    

مستويات السجلّ

ينشئ العميل سجلّات على عدة مستويات مختلفة، ويمكنك ضبط إعداداتك لعرض بعض أو كل ما يلي:

المستوى الطلب الناجح الطلب الذي تعذّر تنفيذه
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

اعتراضات التسجيل

تستخدِم مكتبة عميل Python اعتراضات gRPC للوصول إلى تفاصيل الطلب والردّ وتسجيلها. يمكنك إعداد تسجيل مخصّص من خلال إنشاء اعتراض gRPC باستخدام منطق مخصّص. راجِع دليل التسجيل لمزيد من التفاصيل ومثال على اعتراض تسجيل مخصّص.