คุณกำลังดูเอกสารประกอบ Apigee Edge
ไปที่
เอกสารประกอบเกี่ยวกับ Apigee X. ข้อมูล
InvalidProtocol
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision revision_number Invalid Protocol: invalid_protocol for Syslog handler in policy policy_name.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 4
Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
ตัวอย่างภาพหน้าจอ
สาเหตุ
การติดตั้งใช้งานนโยบาย MessageLaking อาจล้มเหลวเนื่องจากข้อผิดพลาดนี้ หากโปรโตคอลที่ระบุภายในองค์ประกอบ <Protocol>
ไม่ถูกต้อง โปรโตคอลที่ถูกต้องคือ TCP และ UDP สำหรับการส่งข้อความ syslog ผ่าน TLS/SSL จะสามารถสนับสนุนเฉพาะ TCP เท่านั้น
ตัวอย่างเช่น การทำให้พร็อกซี API ใช้งานได้ล้มเหลวเนื่องจากข้อผิดพลาดนี้ หากคุณระบุ HTTP ในองค์ประกอบ <Protocol>
ของนโยบาย MessageLนั้นๆ ดังที่แสดงด้านล่าง
<Protocol>HTTP</Protocol>
การวิเคราะห์
ระบุนโยบาย MessageLcking ที่เกิดข้อผิดพลาด ซึ่งคุณจะเห็นข้อมูลนี้ในข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
LogToSyslog:
Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
ในการกำหนดค่านโยบาย MessageLcking ที่ล้มเหลว ให้ตรวจสอบว่าโปรโตคอลที่ระบุภายในองค์ประกอบ
<Protocol>
ถูกต้องหรือไม่ หากมีการระบุโปรโตคอลที่ไม่ถูกต้อง นั่นเป็นสาเหตุของข้อผิดพลาดตัวอย่างเช่น นโยบายต่อไปนี้ระบุโปรโตคอลที่ไม่ถูกต้อง
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <MessageLogging name="LogToSyslog"> <Syslog> <Message>[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"] Weather request for WOEID {request.queryparam.w}.</Message> <Host>logs-01.loggly.com</Host> <Port>514</Port> <Protocol>HTTP</Protocol> <FormatMessage>true</FormatMessage> </Syslog> <logLevel>ALERT</logLevel> </MessageLogging>
เนื่องจากโปรโตคอลที่กำหนดภายในองค์ประกอบ
<Protocol>
ไม่ถูกต้อง การทำให้พร็อกซี API ใช้งานได้จึงล้มเหลวโดยมีข้อผิดพลาด:Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
ความละเอียด
ตรวจสอบว่าโปรโตคอลที่กำหนดไว้ในองค์ประกอบ <Protocol>
ของนโยบาย MessageLนั้นๆ ถูกต้อง <Protocol>
สนับสนุนค่าต่อไปนี้:
- TCP
- UDP
หากต้องการแก้ไขตัวอย่างที่แสดงด้านบน ให้กำหนดโปรโตคอลที่ถูกต้องภายในเอลิเมนต์ <Protocol>
ดังนี้
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<MessageLogging name="LogToSyslog">
<Syslog>
<Message>[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"] Weather request for WOEID {request.queryparam.w}.</Message>
<Host>logs-01.loggly.com</Host>
<Port>514</Port>
<Protocol>TCP</Protocol>
<FormatMessage>true</FormatMessage>
</Syslog>
<logLevel>ALERT</logLevel>
</MessageLogging>
InvalidPort
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision revision_number Invalid Port: 0 for Syslog handler in policy policy_name.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 4
Invalid Port: 0 for Syslog handler in policy LogToSyslog.
ตัวอย่างภาพหน้าจอ
สาเหตุ
การทำให้นโยบาย MessageLcking ใช้งานได้อาจล้มเหลวเนื่องจากข้อผิดพลาดนี้ หากไม่ได้ระบุหมายเลขพอร์ตภายในองค์ประกอบ <Port>
หรือหากหมายเลขพอร์ตไม่ถูกต้อง หมายเลขพอร์ตต้องเป็นจำนวนเต็มที่มากกว่า 0
ตัวอย่างเช่น ถ้ามีการประกาศองค์ประกอบ <Port>
ดังที่แสดงด้านล่าง การทำให้พร็อกซี API ใช้งานได้จะล้มเหลว
<Port>0</Port>
การวินิจฉัย
ระบุนโยบาย MessageLcking ที่เกิดข้อผิดพลาด คุณดูข้อมูลนี้ได้จากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
LogToSyslog:
Invalid Port: 0 for Syslog handler in policy LogToSyslog.
ในนโยบาย MessageLcking ที่ล้มเหลว ให้ตรวจสอบว่ามีการระบุหมายเลขพอร์ตที่ถูกต้องภายในองค์ประกอบ
<Port>
หรือไม่ หากไม่ได้กำหนดหมายเลขพอร์ตไว้หรือหมายเลขไม่ถูกต้อง ก็เป็นสาเหตุของข้อผิดพลาดตัวอย่างเช่น นโยบายต่อไปนี้ระบุหมายเลขพอร์ตที่ไม่ถูกต้อง
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <MessageLogging name="LogToSyslog"> <Syslog> <Message>[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"] Weather request for WOEID {request.queryparam.w}.</Message> <Host>logs-01.loggly.com</Host> <Port>0</Port> <Protocol>TCP</Protocol> <FormatMessage>true</FormatMessage> </Syslog> <logLevel>ALERT</logLevel> </MessageLogging>
เนื่องจากหมายเลขพอร์ตที่กำหนดภายในองค์ประกอบ
<Port>
ไม่ถูกต้อง การทำให้พร็อกซี API ใช้งานได้จึงล้มเหลวโดยมีข้อผิดพลาด:Invalid Port: 0 for Syslog handler in policy LogToSyslog.
ความละเอียด
ตรวจสอบว่าได้กำหนดหมายเลขพอร์ตภายในองค์ประกอบ <Port>
ของนโยบาย MessageLogging แล้ว ค่านี้ต้องเป็นจำนวนเต็มที่มากกว่า 0
หากต้องการแก้ไขตัวอย่างที่แสดงข้างต้น ให้กำหนดหมายเลขพอร์ตที่ถูกต้องภายในองค์ประกอบ <Protocol>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<MessageLogging name="LogToSyslog">
<Syslog>
<Message>[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"] Weather request for WOEID {request.queryparam.w}.</Message>
<Host>logs-01.loggly.com</Host>
<Port>514</Port>
<Protocol>TCP</Protocol>
<FormatMessage>true</FormatMessage>
</Syslog>
<logLevel>ALERT</logLevel>
</MessageLogging>