ดู ค้นหา และกรองบันทึกคำขอเว็บของไซต์ของคุณด้วย Cloud Logging

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

ต่อไปนี้คือสิ่งที่คุณทำกับบันทึก Cloud Logging ไปที่แต่ละส่วนของหน้านี้เพื่อเรียนรู้รายละเอียด

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

  1. คลิก ลิงก์ ใน การ์ดผสานรวม Cloud Logging ในคอนโซล Firebase

    หากต้องการลิงก์หรือยกเลิกการลิงก์ Cloud Logging คุณต้องมีสิทธิ์รวมอยู่ในบทบาทใดๆ ต่อไปนี้: เจ้าของโปรเจ็กต์หรือผู้แก้ไข หรือ ผู้ดูแลระบบ Firebase Develop

  2. ปฏิบัติตามคำแนะนำบนหน้าจอเพื่อเลือกไซต์โฮสติ้งของคุณควรส่งออกบันทึกไปยัง Cloud Logging

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

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

คุณยัง ยกเลิกการลิงก์ Firebase Hosting จาก Cloud Logging ได้ ซึ่งจะหยุดการส่งออกบันทึกคำขอเว็บไปยัง Cloud Logging

ตรวจสอบการใช้ข้อมูลของคุณสำหรับบันทึก

หลังจากลิงก์กับ Cloud Logging แล้ว คุณจะดูระดับการใช้ข้อมูลสำหรับบันทึกจากเว็บไซต์โฮสติ้งได้:

เข้าใจเว็บไซต์ของคุณดีขึ้น

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

  • การเข้าชมไซต์ของคุณมาจากที่ใดในระดับละเอียด
    คุณสามารถดูข้อมูลเกี่ยวกับคำขอแต่ละรายการ รวมถึง IP ต้นทาง ผู้อ้างอิง เมือง และสถานะ

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

  • การกระจายสถานะสำหรับคำขอของผู้ใช้ปลายทางคืออะไร?
    คุณสามารถดูสถานะของคำขอแต่ละรายการและวินิจฉัยคำขอที่ได้รับข้อผิดพลาดได้ คุณสามารถกรองบันทึกของคุณตาม Critical Error หรือ Warning

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

  • ไซต์ของคุณใช้ประโยชน์จากการแคชเนื้อหาหรือไม่
    แต่ละบันทึกจะมีช่อง cacheHit เพื่อบอกคุณว่าทรัพยากรของเว็บไซต์ของคุณได้รับการบริการอย่างรวดเร็วจากแคช CDN ของโฮสติ้งหรือไม่ หรือต้องเดินทางไปยังแบ็กเอนด์ของโฮสติ้งทั้งหมดหรือไม่ วิธีนี้สามารถช่วยคุณปรับปรุงประสิทธิภาพเว็บไซต์ของคุณโดยใช้ประโยชน์สูงสุดจาก CDN ทั่วโลกของ Firebase ตัวอย่างเช่น คุณสามารถใช้ข้อมูลเพื่อปรับแต่งพฤติกรรมการแคชของ เนื้อหาคงที่ และ เนื้อหาไดนามิก ของคุณ

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

กรองบันทึกของคุณด้วยข้อความค้นหา

หากต้องการเรียนรู้เกี่ยวกับวิธีกรองบันทึกของคุณด้วยข้อความค้นหา โปรดไปที่ ตัวอย่างข้อความค้นหาโดยใช้ Logs Viewer และ Building Log Queries ตารางด้านล่างจะอธิบายช่องต่างๆ ที่ใช้ได้กับข้อความค้นหาเหล่านั้น

สำหรับโฮสติ้ง ต่อไปนี้คือตัวกรองเริ่มต้นบางส่วนสำหรับการสืบค้น:

  • ทรัพยากร ( resource.type ) — firebase_domain (โดเมนไซต์โฮสติ้ง Firebase)
  • ชื่อบันทึก ( logName ) — webrequests (Firebase Hosting)

แต่ละรายการบันทึกมีโครงสร้างที่กำหนดไว้ล่วงหน้าและฟิลด์ที่สามารถสืบค้นได้ (ดู LogEntry ) สำหรับโฮสติ้ง บางฟิลด์เป็นฟิลด์มาตรฐานสำหรับคำขอ HTTP แต่มีค่าฟิลด์อื่นๆ ที่มาจากการประมวลผลที่โฮสติ้งรันกับคำขอแต่ละรายการ

สนาม คำอธิบาย
โฮสติ้ง Firebase จะจัดเก็บช่องต่อไปนี้ในออบเจ็กต์ httpRequest ของรายการบันทึก
ฟิลด์เหล่านี้ถูกกำหนดไว้ในข้อกำหนด HTTP
cacheHit ไม่ว่า Hosting CDN จะมีทรัพยากรของการตอบกลับอยู่ในแคชหรือไม่
latency ระยะเวลาคำขอ มีหน่วยเป็นวินาทีโดยมี s postfix (เช่น 1.256s )
protocol โปรโตคอลที่ใช้สำหรับการร้องขอ (เช่น HTTP/1.1 , HTTP/2 , websocket )
referer ที่อยู่ของหน้าเว็บก่อนหน้าซึ่งมีลิงก์ไปยังหน้าที่ร้องขอในปัจจุบัน (ถ้ามี)
remoteIp IP ไคลเอ็นต์ต้นทางสำหรับการร้องขอ
requestMethod วิธีการร้องขอ ( GET , POST , PUT ฯลฯ )
requestSize ขนาดของคำขอเป็นไบต์
requestUrl URL แบบเต็มของคำขอ (เช่น
https://foo.web.app/bar หรือ https://custom.domain.com?query=param )
responseSize ขนาดการตอบสนอง HTTP เป็นไบต์
serverIp ไม่ได้มีประชากร
status สถานะการตอบสนอง HTTP (เช่น 200 หรือ 404 )
userAgent ส่วนหัว user-Agent ของคำขอ
Firebase Hosting จะจัดเก็บช่องเพิ่มเติมในออบเจ็กต์ jsonPayload ของรายการบันทึก
acceptEncoding (จากคำขอ HTTP) การเข้ารหัสเนื้อหาใดซึ่งโดยปกติจะเป็นอัลกอริธึมการบีบอัดที่ไคลเอนต์รองรับ (เช่น gzip หรือ compress )
billable โครงการของคุณถูกเรียกเก็บเงินสำหรับคำขอหรือไม่
customDomain ไม่ว่าจะมีการร้องขอกับโดเมนที่กำหนดเองหรือไม่
hostname ชื่อโฮสต์ที่มีการร้องขอ
remoteIpCountry ประเทศต้นทางของคำขอ
remoteIpCity เมืองต้นทางของคำขอ

ใช้ตัวชี้วัดตามบันทึก

คุณสามารถดูและสร้าง ตัวชี้วัดตามบันทึก จากนั้นใช้ตัวชี้วัดเหล่านี้ใน Cloud Monitoring เพื่อสร้างแผนภูมิและนโยบายการแจ้งเตือน

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

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

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

โฮสติ้งของ Firebase ยังสร้างเมตริกการบันทึกเฉพาะโฮสติ้งต่อไปนี้ด้วย ตัวชี้วัดเหล่านี้ไม่ได้เฉพาะเจาะจงสำหรับรายการบันทึก แต่เป็นเฉพาะกับไซต์โฮสติ้งเฉพาะโดยรวม

  • log_bytes : จำนวนไบต์รวมของการใช้ข้อมูลสำหรับแต่ละไซต์

  • response_count : จำนวนการตอบกลับทั้งหมดที่เขียนสำหรับไซต์

    เมตริกนี้รวมฟิลด์สถานะ HTTP ดังนั้นคุณจึงสามารถพล็อตการตอบสนอง HTTP ตามสถานะได้ (เป็นตัวอย่าง)

ส่งออกบันทึกไปยังเครื่องมือ Google Cloud อื่นๆ

คุณยังส่งออกบันทึกของเว็บไซต์ไปยังเครื่องมืออื่นๆ ของ Google Cloud ได้ เช่น Cloud Monitoring หรือ BigQuery เช่น

  • เมื่อใช้ Cloud Monitoring คุณสามารถสร้างเมตริกตามบันทึกที่คุณสามารถใช้ในแผนภูมิและนโยบายการแจ้งเตือนได้

  • เมื่อใช้ BigQuery คุณสามารถดำเนินการใดๆ ต่อไปนี้ได้

    • ใช้ Data Studio เพื่อสร้างแดชบอร์ดข้อมูลโฮสติ้งของคุณ
    • ดำเนินการค้นหาเพื่อรับข้อมูลเชิงลึกเพิ่มเติมเกี่ยวกับคำขอของคุณ (ขนาดการตอบกลับโดยเฉลี่ย จำนวนการเข้าถึงแคชเทียบกับการพลาด ฯลฯ)
    • เรียนรู้ว่า URL ใดที่ผู้ใช้ของคุณร้องขอจริงๆ
    • รวมข้อมูลโฮสติ้งของคุณเข้ากับข้อมูล Firebase อื่นๆ ที่คุณส่งออกไปยัง BigQuery และค้นหาด้วยวิธีใหม่ๆ