โดยทั่วไปในการตั้งค่าการใช้งานจริง คุณควรเปิดใช้กลไกการตรวจสอบภายใน การติดตั้งใช้งาน Apigee Edge สำหรับ Private Cloud เทคนิคการตรวจสอบเหล่านี้จะเตือนผู้ดูแลระบบ (หรือผู้ปฏิบัติงาน) เครือข่ายเกี่ยวกับข้อผิดพลาดหรือความล้มเหลว ข้อผิดพลาดทุกรายการที่สร้างขึ้นจะรายงานเป็นการแจ้งเตือนใน Apigee Edge ดูข้อมูลเพิ่มเติมเกี่ยวกับการแจ้งเตือนได้ที่แนวทางปฏิบัติแนะนำในการตรวจสอบ
โดยส่วนประกอบของ Apigee จะแบ่งออกเป็น 2 หมวดหมู่หลักๆ ดังนี้
- บริการเซิร์ฟเวอร์ Java เฉพาะ Apigee: ซึ่งรวมถึงเซิร์ฟเวอร์การจัดการ , Message Processor, เซิร์ฟเวอร์ Qpid และเซิร์ฟเวอร์ Postgres
- บริการของบุคคลที่สาม: ซึ่งรวมถึง Nginx Router, Apache Cassandra, Apache ZooKeeper, SymasLDAP, ฐานข้อมูล PostgreSQL และ Qpid
ในการติดตั้งใช้งาน Apigee Edge ในองค์กร ตารางต่อไปนี้จะแสดงภาพรวมโดยย่อของ พารามิเตอร์ที่คุณตรวจสอบได้
ส่วนประกอบ | การตรวจสอบระบบ | สถิติระดับกระบวนการ | การตรวจสอบระดับ API | การตรวจสอบโฟลว์ข้อความ | เฉพาะคอมโพเนนต์ | |
---|---|---|---|---|---|---|
บริการ Java เฉพาะ Apigee |
เซิร์ฟเวอร์การจัดการ |
|||||
Message Processor |
||||||
Qpid Server |
||||||
เซิร์ฟเวอร์ Postgres |
||||||
บริการของบุคคลที่สาม |
Apache Cassandra |
|||||
Apache ZooKeeper |
||||||
SymasLDAP |
||||||
ฐานข้อมูล PostgreSQL |
||||||
Qpid |
||||||
เราเตอร์ Nginx |
โดยทั่วไปหลังจากติดตั้ง Apigee Edge แล้ว คุณจะสามารถตรวจสอบ งานต่อไปนี้เพื่อติดตามประสิทธิภาพของการติดตั้ง Apigee Edge สำหรับ Private Cloud ได้
การตรวจสอบประสิทธิภาพการทำงานของระบบ
การวัดพารามิเตอร์สถานะของระบบ เช่น การใช้งาน CPU, การใช้งานหน่วยความจำ และการเชื่อมต่อพอร์ตในระดับที่สูงขึ้นเป็นสิ่งสำคัญอย่างยิ่ง คุณสามารถตรวจสอบพารามิเตอร์ต่อไปนี้เพื่อ ดูข้อมูลพื้นฐานเกี่ยวกับสถานะของระบบ
- การใช้งาน CPU: ระบุสถิติพื้นฐาน (ผู้ใช้/ระบบ/IO Wait/Idle) เกี่ยวกับการใช้งาน CPU เช่น CPU ทั้งหมดที่ระบบใช้
- หน่วยความจำที่ใช้/ว่าง: ระบุการใช้งานหน่วยความจำของระบบเป็นไบต์ เช่น หน่วยความจำจริงที่ระบบใช้
- การใช้พื้นที่ในดิสก์: ระบุข้อมูลระบบไฟล์ตามการใช้ดิสก์ปัจจุบัน เช่น พื้นที่ฮาร์ดดิสก์ที่ระบบใช้
- ค่าเฉลี่ยของการโหลด: ระบุจำนวนกระบวนการที่รอเรียกใช้
- สถิติด้านเครือข่าย: แพ็กเก็ตและ/หรือไบต์ของเครือข่ายที่ส่งและ รับ รวมถึงข้อผิดพลาดในการส่งเกี่ยวกับคอมโพเนนต์ที่ระบุ
กระบวนการ/การตรวจสอบแอปพลิเคชัน
ในระดับกระบวนการ คุณจะดูข้อมูลสำคัญเกี่ยวกับกระบวนการทั้งหมดที่กำลังทำงานได้ ตัวอย่างเช่น สถิติการใช้งานหน่วยความจำและ CPU ที่กระบวนการหรือแอปพลิเคชัน ใช้ สำหรับกระบวนการต่างๆ เช่น Qpid, Postgres Postmaster, Java และอื่นๆ คุณสามารถตรวจสอบ สิ่งต่อไปนี้ได้
- การระบุกระบวนการ: ระบุกระบวนการ Apigee ที่เฉพาะเจาะจง เช่น คุณสามารถตรวจสอบว่ามีกระบวนการ Java ของเซิร์ฟเวอร์ Apigee หรือไม่
- สถิติเธรด: ดูรูปแบบการสร้างเธรดพื้นฐานที่กระบวนการ ใช้ เช่น คุณสามารถตรวจสอบจำนวนเธรดสูงสุด จำนวนเธรดสำหรับกระบวนการทั้งหมด
- การใช้งานหน่วยความจำ: ดูการใช้งานหน่วยความจำสำหรับกระบวนการ Apigee ทั้งหมด เช่น คุณสามารถตรวจสอบพารามิเตอร์ต่างๆ เช่น การใช้หน่วยความจำฮีป การใช้หน่วยความจำที่ไม่ใช่ฮีปที่กระบวนการใช้ ได้
การตรวจสอบระดับ API
ที่ระดับ API คุณสามารถตรวจสอบว่าเซิร์ฟเวอร์พร้อมใช้งานสำหรับการเรียก API ที่ใช้บ่อยซึ่ง Apigee พร็อกซีไว้หรือไม่
เช่น คุณสามารถตรวจสอบ API ในเซิร์ฟเวอร์การจัดการ เราเตอร์
และตัวประมวลผลข้อความได้โดยเรียกใช้curl
คำสั่งต่อไปนี้
curl http://host:port/v1/servers/self/up
โดย host คือที่อยู่ IP ของคอมโพเนนต์ Apigee Edge หมายเลข port จะเฉพาะเจาะจงสำหรับคอมโพเนนต์ Edge แต่ละรายการ เช่น
เซิร์ฟเวอร์การจัดการ: 8080
- เราเตอร์: 8081
- Message Processor: 8082
- ฯลฯ
ดูข้อมูลเกี่ยวกับการเรียกใช้คำสั่งนี้สำหรับแต่ละคอมโพเนนต์ได้ในส่วนต่างๆ ด้านล่าง
การเรียกนี้จะแสดงผล "จริง" และ "เท็จ" เพื่อให้ได้ผลลัพธ์ที่ดีที่สุด คุณยังสามารถออกการเรียก API โดยตรงในแบ็กเอนด์ (ซึ่งซอฟต์แวร์ Apigee โต้ตอบด้วย) เพื่อพิจารณาอย่างรวดเร็ว ว่ามีข้อผิดพลาดภายในสภาพแวดล้อมซอฟต์แวร์ Apigee หรือในแบ็กเอนด์หรือไม่
การตรวจสอบโฟลว์ข้อความ
คุณสามารถรวบรวมข้อมูลจากเราเตอร์และตัวประมวลผลข้อความเกี่ยวกับรูปแบบ/สถิติการไหลของข้อความได้ ซึ่งจะช่วยให้คุณตรวจสอบสิ่งต่อไปนี้ได้
- จำนวนไคลเอ็นต์ที่ใช้งานอยู่
- จำนวนการตอบกลับ (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 กลับไปหมุนเวียนโดยอัตโนมัติ นอกจากนี้ เราเตอร์ยังเขียนข้อความ "ทำเครื่องหมาย" ลงในบันทึกในรูปแบบต่อไปนี้ด้วย
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