สิ่งที่ต้องตรวจสอบ

Edge for Private Cloud v4.18.01

โดยทั่วไปในการตั้งค่าเวอร์ชันที่ใช้งานจริง คุณจะต้องเปิดใช้กลไกการตรวจสอบภายในการติดตั้งใช้งาน Apigee Edge สำหรับ Private Cloud เทคนิคการตรวจสอบเหล่านี้จะเตือนผู้ดูแลเครือข่าย (หรือผู้ให้บริการ) เกี่ยวกับข้อผิดพลาดหรือความล้มเหลว ข้อผิดพลาดที่เกิดขึ้นทั้งหมดจะได้รับการรายงานเป็นการแจ้งเตือนใน Apigee Edge ดูข้อมูลเพิ่มเติมเกี่ยวกับการแจ้งเตือนได้ที่แนวทางปฏิบัติแนะนำในการตรวจสอบ

เพื่อให้เข้าใจง่าย คอมโพเนนต์ของ Apigee จะแบ่งออกเป็น 2 หมวดหมู่หลักๆ ดังนี้

  • บริการเซิร์ฟเวอร์ Java เฉพาะของ Apigee - ซึ่งรวมถึง Management Server, Message Processor, Qpid Server และ Postgres Server
  • บริการของบุคคลที่สาม - ได้แก่ Nginx Router, Apache Cassandra, Apache ZooKeeper, OpenLDAP, ฐานข้อมูล PostgreSQL และ Qpid

ในการติดตั้งใช้งาน Apigee Edge ในองค์กร ตารางต่อไปนี้จะแสดงภาพรวมคร่าวๆ ของพารามิเตอร์ที่คุณตรวจสอบได้

คอมโพเนนต์

การตรวจสอบระบบ

สถิติระดับกระบวนการ

การตรวจสอบระดับ API

การตรวจสอบโฟลว์ข้อความ

เฉพาะคอมโพเนนต์

บริการ Java เฉพาะของ Apigee

เซิร์ฟเวอร์การจัดการ

?

?

?

Message Processor

?

?

?

?

เซิร์ฟเวอร์ Qpid

?

?

?

เซิร์ฟเวอร์ Postgres

?

?

?

บริการของบุคคลที่สาม

Apache Cassandra

?

?

Apache ZooKeeper

?

?

OpenLDAP

?

?

ฐานข้อมูล PostgreSQL

?

?

Qpid

?

?

เราเตอร์ Nginx

?

?

?

โดยทั่วไป หลังจากติดตั้ง Apigee Edge แล้ว คุณจะสามารถทำงานตรวจสอบต่อไปนี้เพื่อติดตามประสิทธิภาพของการติดตั้ง Apigee Edge สำหรับ Private Cloud ได้

การตรวจสอบประสิทธิภาพการทำงานของระบบ

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

  • การใช้งาน CPU - ระบุสถิติพื้นฐาน (ผู้ใช้/ระบบ/การรอ IO/ไม่มีการใช้งาน) เกี่ยวกับการใช้งาน CPU เช่น CPU ทั้งหมดที่ระบบใช้
  • หน่วยความจำว่าง/ที่ใช้ - ระบุการใช้หน่วยความจำของระบบเป็นไบต์ เช่น หน่วยความจำจริงที่ระบบใช้
  • การใช้พื้นที่ในดิสก์ - ระบุข้อมูลระบบไฟล์ตามการใช้ดิสก์ปัจจุบัน เช่น พื้นที่ในฮาร์ดดิสก์ที่ระบบใช้
  • Load Average - ระบุจำนวนกระบวนการที่รอการทำงาน
  • สถิติเครือข่าย - แพ็กเก็ตเครือข่ายและ/หรือไบต์ที่ส่งและรับ พร้อมกับข้อผิดพลาดในการส่งเกี่ยวกับคอมโพเนนต์ที่ระบุ

การตรวจสอบกระบวนการ/แอปพลิเคชัน

ในระดับกระบวนการ คุณสามารถดูข้อมูลสำคัญเกี่ยวกับกระบวนการทั้งหมดที่กำลังทำงานอยู่ได้ ตัวอย่างเช่น สถิติการใช้งานหน่วยความจำและ CPU ที่กระบวนการหรือแอปพลิเคชันใช้ สำหรับกระบวนการต่างๆ เช่น qpidd, postgres postmaster, java และอื่นๆ คุณสามารถตรวจสอบสิ่งต่อไปนี้ได้

  • การระบุกระบวนการ: ระบุกระบวนการ Apigee ที่เฉพาะเจาะจง เช่น คุณสามารถตรวจสอบการมีอยู่ของกระบวนการ Java ของเซิร์ฟเวอร์ Apigee ได้
  • สถิติชุดข้อความ: ดูรูปแบบชุดข้อความที่สำคัญซึ่งกระบวนการใช้ เช่น คุณสามารถตรวจสอบจำนวนเทรดสูงสุด จำนวนเทรดสำหรับกระบวนการทั้งหมดได้
  • การใช้งานหน่วยความจำ: ดูการใช้งานหน่วยความจำสำหรับกระบวนการ Apigee ทั้งหมด ตัวอย่างเช่น คุณสามารถตรวจสอบพารามิเตอร์ต่างๆ เช่น การใช้งานหน่วยความจำฮีป การใช้งานหน่วยความจำที่ไม่ใช่ฮีปที่กระบวนการใช้

การตรวจสอบระดับ API

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

curl http://<host>:<port>/v1/servers/self/up

โดยที่ <host> คือที่อยู่ IP ของคอมโพเนนต์ Apigee Edge หมายเลข <port> จะเจาะจงสำหรับคอมโพเนนต์ Edge แต่ละรายการ เช่น

เซิร์ฟเวอร์การจัดการ: 8080

  • เราเตอร์: 8081
  • Message Processor: 8082
  • ฯลฯ

ดูข้อมูลเกี่ยวกับการเรียกใช้คำสั่งนี้สำหรับแต่ละคอมโพเนนต์ได้ที่ส่วนต่างๆ ด้านล่าง

การเรียกนี้จะแสดงผล "true" และ "false" เพื่อให้ได้ผลลัพธ์ที่ดีที่สุด คุณยังสามารถออกการเรียก API โดยตรงในแบ็กเอนด์ (ซึ่งซอฟต์แวร์ Apigee โต้ตอบด้วย) เพื่อระบุได้อย่างรวดเร็วว่ามีข้อผิดพลาดภายในสภาพแวดล้อมซอฟต์แวร์ Apigee หรือในแบ็กเอนด์หรือไม่

หมายเหตุ: หากต้องการตรวจสอบพร็อกซี API คุณสามารถใช้ API Health ของ Apigee ได้ด้วย API Health จะเรียกใช้พร็อกซี API ตามกำหนดเวลาและแจ้งให้คุณทราบเมื่อดำเนินการไม่สำเร็จและสาเหตุที่ดำเนินการไม่สำเร็จ เมื่อการเรียกใช้สำเร็จ ประสิทธิภาพของ API Health จะแสดงเวลาในการตอบสนองและแจ้งเตือนคุณได้เมื่อเวลาในการตอบสนองสูง API Health สามารถโทรจากสถานที่ต่างๆ ทั่วโลกเพื่อเปรียบเทียบพฤติกรรมของ API ระหว่างภูมิภาคได้

การตรวจสอบขั้นตอนของข้อความ

คุณสามารถรวบรวมข้อมูลจากเราเตอร์และ Message Processor เกี่ยวกับรูปแบบ/สถิติของโฟลว์ข้อความได้ ซึ่งจะช่วยให้คุณตรวจสอบสิ่งต่อไปนี้ได้

  • จำนวนลูกค้าที่ใช้งานอยู่
  • จำนวนคำตอบ (10X, 20X, 30X, 40X และ 50X)
  • การเชื่อมต่อล้มเหลว

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

การตรวจสอบประสิทธิภาพการทำงานของเราเตอร์ของ Message Processor

เราเตอร์ใช้กลไกการตรวจสอบประสิทธิภาพการทำงานเพื่อระบุว่า Message Processor ใดทำงานตามที่คาดไว้ หากตรวจพบว่า Message Processor ไม่ทำงานหรือทำงานช้า เราเตอร์จะนำ Message Processor ออกจากการหมุนเวียนโดยอัตโนมัติได้ ในกรณีนี้ เราเตอร์จะเขียนข้อความ "Mark Down" ลงในไฟล์บันทึกของเราเตอร์ที่ /opt/apigee/var/log/edge-router/logs/system.log

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

2014-05-06 15:51:52,159 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now DISCONNECTED. handle = <MP_IP> at 1399409512159

2014-04-17 12:54:48,512 org: env: nioEventLoopGroup-2-2 INFO HEARTBEAT - HBTracker.gotResponse() : No HeartBeat detected from /<MP_IP>:<PORT> Mark Down

โดยที่ /<MP_IP>:<PORT> คือที่อยู่ IP และหมายเลขพอร์ตของ Message Processor

หากในภายหลังเราเตอร์ทำการตรวจสอบประสิทธิภาพและพิจารณาว่า Message Processor ทำงานอย่างถูกต้อง เราเตอร์จะนำ Message Processor กลับเข้าสู่การหมุนเวียนโดยอัตโนมัติ นอกจากนี้ Router ยังเขียนข้อความ "Mark Up" ลงในบันทึกในรูปแบบต่อไปนี้ด้วย

2014-05-06 16:07:29,054 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now CONNECTED. handle = <IP> at 1399410449054

2014-04-17 12:55:06,064 org: env: nioEventLoopGroup-4-1 INFO HEARTBEAT - HBTracker.updateHB() : HeartBeat detected from /<IP>:<PORT> Mark Up