คุณกำลังดูเอกสารประกอบ Apigee Edge
ไปที่
เอกสารประกอบเกี่ยวกับ Apigee X. ข้อมูล
ลักษณะปัญหา
การทำให้การแก้ไขพร็อกซี API ใช้งานได้ผ่าน Edge UI หรือการเรียก API การจัดการ Edge ล้มเหลวโดยมี
ข้อผิดพลาด "Unexpected error occurred while processing the updates
"
ข้อความแสดงข้อผิดพลาด
Error in deployment for environment sit. The revision is deployed and traffic can flow, but flow may be impared. com.apigee.kernel.exceptions.spi.UncheckedException{ code = messaging.runtime.UpdateFailed, message = Unexpected error occurred while processing the updates, associated contexts = []}
สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้อาจมีสาเหตุมาจากหลายสาเหตุ ตัวอย่างสาเหตุมีดังนี้
สาเหตุ | รายละเอียด | สำหรับ |
หน่วยความจำเต็ม | ไม่มีพื้นที่ฮีปของ Java ตัวประมวลผลข้อความทำให้พร็อกซี API ใช้งานได้ ล้มเหลว | ผู้ใช้ Private Cloud |
ข้อผิดพลาดในแพ็กเกจพร็อกซี API | แพ็กเกจพร็อกซี API มีข้อผิดพลาดที่อาจทำให้ใช้งานพร็อกซี API ไม่สำเร็จ | ผู้ใช้ระบบคลาวด์ส่วนตัวและระบบคลาวด์สาธารณะ |
ขั้นตอนทั่วไปที่ควรลองทำก่อน
- ตรวจสอบว่ามีข้อผิดพลาดในการใช้งานหรือสแต็กเทรซข้อยกเว้นในตัวประมวลผลข้อความหรือไม่
บันทึก
/opt/apigee/var/log/apigee/edge-message-processor/logs/system.log
- โดยปกติแล้วคุณจะเห็นสแต็กเทรซที่ให้ข้อมูลเกี่ยวกับสาเหตุของการติดตั้งใช้งาน โปรดอ่านสแต็กเทรซอย่างละเอียดเพื่อทำความเข้าใจสาเหตุ
หน่วยความจำไม่เพียงพอ
การวินิจฉัย
หมายเหตุ: มีเพียงผู้ใช้ Edge Private Cloud เท่านั้นที่จะทำตามขั้นตอนต่อไปนี้ได้ หากคุณ อยู่ใน Edge Public Cloud โปรดติดต่อทีมสนับสนุนของ Apigee
- คุณอาจเห็นข้อยกเว้นที่คล้ายกับข้อยกเว้นในบันทึกของโปรแกรมประมวลผลข้อความ
/opt/apigee/var/log/apigee/edge-message-processor/logs/system.log
ตามที่แสดงใน รูปด้านล่างApigee-Main-4 ERROR BOOTSTRAP - RuntimeConfigurationServiceImpl.dispatchToListeners() : RuntimeConfigurationServiceImpl.dispatchToListeners : Error occurred while dispatching the request DeployEvent{organization=‘myorg', application='person-credentials-api', applicationRevision='275', deploymentSpec=basepath=/;env=dev;, deploymentID=null} to com.apigee.application.bootstrap.listeners.MessageProcessorBootstrapListener@5db88cb8 com.apigee.kernel.exceptions.spi.UncheckedException: Unexpected error occurred while processing the updates at com.apigee.entities.AbstractConfigurator.throwUncheckedException(AbstractConfigurator.java:280) ~[config-entities-1.0.0.jar:na] at com.apigee.messaging.configuration.MessageProcessorServiceImpl.configure(MessageProcessorServiceImpl.java:665) ~[message-processor-1.0.0.jar:na] at com.apigee.application.bootstrap.listeners.MessageProcessorBootstrapListener.configureMessageProcessorService(MessageProcessorBootstrapListener.java:54) ~[application-bootstrap-1.0.0.jar:na] at com.apigee.application.bootstrap.listeners.MessageProcessorBootstrapListener.deploy(MessageProcessorBootstrapListener.java:29) ~[application-bootstrap-1.0.0.jar:na] …<snipped> at com.apigee.application.bootstrap.proto.RuntimeConfig_ConfigRPCService_BlockingSkeleton$1.run(RuntimeConfig_ConfigRPCService_BlockingSkeleton.java:38) [application-bootstrap-1.0.0.jar:na] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [na:1.7.0_75] at java.util.concurrent.FutureTask.run(FutureTask.java:262) [na:1.7.0_75] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_75] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_75] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_75] Caused by: java.lang.OutOfMemoryError: Java heap space
- ข้อความ Caused by: java.lang.OutofMemoryError: Java Heap space แสดงว่า Message Processor มีพื้นที่ Java Heap ไม่เพียงพอ
ความละเอียด
หมายเหตุ: มีเพียงผู้ใช้ Edge Private Cloud เท่านั้นที่จะทำตามขั้นตอนต่อไปนี้ได้ หากคุณ อยู่ใน Edge Public Cloud โปรดติดต่อทีมสนับสนุนของ Apigee
เพิ่มพื้นที่ Java Heap สูงสุดใน Message Processor
พื้นที่สูงสุดของ Java Heap จะควบคุมโดยพร็อพเพอร์ตี้ JVM -Xmx ขั้นตอนต่างๆ มีดังนี้ เพิ่มพื้นที่ Java Heap ใน Message Processor ด้วยคำสั่งต่อไปนี้
- กำหนดจำนวนหน่วยความจำที่จะเพิ่มพื้นที่ฮีปของ Java ได้ ดังนี้
- ตรวจสอบค่าปัจจุบันที่กำหนดไว้สำหรับพื้นที่ฮีปสูงสุด max_mem ในไฟล์
/opt/apigee/edge-message-processor/bin/setenv.sh
- รับ MemTotal (จำนวน RAM ที่ใช้ได้ทั้งหมด), MemFree
(จำนวน RAM จริงที่เหลือในระบบ) โดยใช้
/proc/meminfo บนระบบ
- ตรวจสอบว่าข้อมูลข้างต้นรวมหน่วยความจำที่ใช้โดยกระบวนการอื่นๆ เช่น Edge Router และอื่นๆ ที่อยู่ในระบบเดียวกัน
- จากข้อมูลข้างต้น คุณจะพิจารณาปริมาณฮีปของ Java ได้ เพิ่มขึ้นสำหรับตัวประมวลผลข้อความ
- ตัวอย่างเช่น พื้นที่ฮีปสูงสุดปัจจุบันในตัวประมวลผลข้อความคือ 1024 MB MemTotal คือ 8 GB (8192 MB), MemFree คือ 5 GB (5120 MB) คุณจึงสามารถเพิ่ม Java สูงสุดได้ ฮีป Space ได้ถึง 3 GB (3072 MB)
- หากต้องการความช่วยเหลือในการกำหนดปริมาณฮีปของ Java โปรดติดต่อทีมสนับสนุนของ Apigee
- ตรวจสอบค่าปัจจุบันที่กำหนดไว้สำหรับพื้นที่ฮีปสูงสุด max_mem ในไฟล์
- สร้างไฟล์ต่อไปนี้ หากยังไม่มี
/opt/apigee/customer/application/message-processor.properties
- เพิ่มบรรทัดต่อไปนี้ในไฟล์ด้วยการตั้งค่าฮีปที่เพิ่มขึ้น (เช่น 3072M)
bin_setenv_max_mem=3072m
- บันทึกไฟล์
- รีสตาร์ทโปรแกรมประมวลผลข้อความ
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- หากคุณมีโปรแกรมประมวลผลข้อความมากกว่าหนึ่งโปรแกรม ให้ทำขั้นตอนที่ 3 ถึง 6 ซ้ำในส่วน ตัวประมวลผลข้อความ
หากยังคงพบปัญหาอยู่ ให้ติดต่อ Apigee
การสนับสนุน.
ข้อผิดพลาดในกลุ่มพร็อกซี API
หากมีข้อผิดพลาดในนโยบายที่ใช้ในพร็อกซี API การทำให้ใช้งานได้จะ
ล้มเหลวโดยมีข้อผิดพลาด "Unexpected error occurred while processing the updates
"
ตัวอย่างเช่น ดู โพสต์ชุมชน
การวินิจฉัย
หมายเหตุ: มีเพียงผู้ใช้ Edge Private Cloud เท่านั้นที่จะทำตามขั้นตอนต่อไปนี้ได้ หากคุณ อยู่ใน Edge Public Cloud โปรดติดต่อทีมสนับสนุนของ Apigee
- ตรวจสอบบันทึก Message Processor เพื่อหาข้อยกเว้นหรือข้อผิดพลาดที่เกี่ยวข้องกับพร็อกซี API ของการทำให้ใช้งานได้ ข้อผิดพลาดนี้ควรให้ข้อมูลเกี่ยวกับสิ่งที่ควรเปลี่ยนแปลงในพร็อกซี API กลุ่มเพื่อจัดการกับปัญหา
- หากไม่มีข้อความแสดงข้อผิดพลาดปรากฏในบันทึกของ Message Processor โปรดตรวจสอบความแตกต่างในการแก้ไข ประวัติของพร็อกซี API ถ้าการแก้ไขเวอร์ชันเก่าใช้งานได้โดยไม่มีปัญหา ให้ตรวจสอบโค้ดว่า มีการเปลี่ยนแปลง รายการ
ความละเอียด
- ทำการเปลี่ยนแปลงที่จำเป็นในแพ็กเกจพร็อกซี API เพื่อแก้ไขปัญหา
- ยกเลิกการเปลี่ยนแปลงโค้ดไปยังพร็อกซี API ที่ทำให้เกิดปัญหาในการทำให้ใช้งานได้
หากยังคงพบปัญหาอยู่ ให้ติดต่อทีมสนับสนุนของ Apigee สำหรับ ความช่วยเหลือเพิ่มเติม