การกำหนดค่า

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

ไฟล์การกำหนดค่า

คุณระบุไฟล์ google_ads_config.rb ที่จะใช้เมื่อ สร้างอินสแตนซ์ของไคลเอ็นต์ได้

หากคุณไม่ใช้อาร์กิวเมนต์เมื่อสร้างอินสแตนซ์ของออบเจ็กต์ GoogleAdsClient ไลบรารีจะค้นหาในตำแหน่งที่ระบุในตัวแปรสภาพแวดล้อม GOOGLE_ADS_CONFIGURATION_FILE_PATH หากไม่ได้ตั้งค่าตัวแปรดังกล่าว ไลบรารีจะค้นหาไฟล์ในไดเรกทอรี HOME

หรือคุณจะระบุเส้นทางเมื่อสร้างอินสแตนซ์ของออบเจ็กต์ GoogleAdsClient ดังนี้ก็ได้ ซึ่งในกรณีนี้ไคลเอ็นต์จะค้นหาไฟล์ในเส้นทางดังกล่าว

  client = Google::Ads::GoogleAds::GoogleAdsClient.new("path/to/file.rb")

วิธีที่ง่ายที่สุดในการสร้างไฟล์นี้คือคัดลอก google_ads_config.rb จากที่เก็บ GitHub แล้วแก้ไขให้มีโทเค็นการรีเฟรช รหัสไคลเอ็นต์ และรหัสลับไคลเอ็นต์

การกำหนดค่าแบบไดนามิก

คุณสามารถตั้งค่าการกำหนดค่าแบบไดนามิกเมื่อสร้างอินสแตนซ์ของไลบรารี หรือแม้แต่หลังจากนั้นก็ได้ โดยทำดังนี้

client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
    config.client_id = 'INSERT_CLIENT_ID_HERE' # ... more configuration
end

คุณยังแก้ไขการกำหนดค่าหลังจากสร้างอินสแตนซ์ได้ด้วย โดยทำดังนี้

client.configure do |config|
  config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'

# ... more configuration
end

ฟิลด์การกำหนดค่า

ออบเจ็กต์ Config รองรับฟิลด์ต่อไปนี้

ฟิลด์ทั่วไป

  • refresh_token: โทเค็นการรีเฟรช OAuth
  • client_id: รหัสไคลเอ็นต์ OAuth
  • client_secret: รหัสลับไคลเอ็นต์ OAuth
  • login_customer_id: ดูเอกสารประกอบ login-customer-id

ฟิลด์การบันทึก ดูรายละเอียดทั้งหมดได้ในคู่มือการบันทึก

  • log_level: ข้อความระดับการบันทึกขั้นต่ำที่คุณต้องการบันทึก ตัวอย่างเช่น การระบุ 'DEBUG' จะทำให้คุณเห็นข้อความบันทึกทั้งหมด และการระบุ 'INFO' จะไม่รวมข้อความ DEBUG แต่แสดงข้อความอื่นๆ ทั้งหมด
  • log_target: ตำแหน่งที่คุณต้องการบันทึก เช่น STDERR
  • logger: ระบุตัวบันทึกที่กำหนดเอง การระบุตัวบันทึกนี้จะลบล้างทั้ง log_level และ log_target

ตัวแปรสภาพแวดล้อม

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

หากต้องการโหลดตัวแปรสภาพแวดล้อมลงใน Config ให้เรียก load_environment_config ดังนี้

client = Google::Ads::GoogleAds::GoogleAdsClient.new
client.load_environment_config

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

นอกจากตัวแปรสภาพแวดล้อมที่ไลบรารีทั้งหมดรองรับแล้ว ไลบรารี Ruby ยังมีตัวแปรเพิ่มเติม 2 ตัวดังนี้

  • GOOGLE_ADS_RUBY_LOG_LEVEL: log_level ตามที่อธิบายไว้ก่อนหน้านี้
  • GOOGLE_ADS_RUBY_HTTP_PROXY: ระบุพร็อกซี HTTP