19.03.01 - บันทึกประจำรุ่นของ Apigee Edge สำหรับระบบคลาวด์สาธารณะ

คุณกำลังดูเอกสารประกอบ Apigee Edge
ไปที่ เอกสารประกอบเกี่ยวกับ Apigee X.
ข้อมูล

เมื่อวันอังคารที่ 3 ธันวาคม 2019 เราได้เริ่มเผยแพร่การอัปเดต Apigee Edge เวอร์ชันนี้สำหรับ ระบบคลาวด์สาธารณะ (การเผยแพร่ครั้งแรกคือวันพฤหัสบดีที่ 18 เมษายน 2019)

ฟีเจอร์และการอัปเดตใหม่ๆ

ฟีเจอร์และการอัปเดตใหม่ๆ ในรุ่นนี้มีดังนี้

รหัสปัญหา ชื่อคอมโพเนนต์ คำอธิบาย
Apigee ได้เริ่มเผยแพร่การอัปเดตต่อไปนี้ในวันที่ 1 ตุลาคม 2019
110995050 รันไทม์ของ API

การจัดสรรภาระงาน - การควบคุมที่มากขึ้นสำหรับการนำเซิร์ฟเวอร์ที่ล้มเหลวออก

เมื่อกำหนดค่า ตัวจัดสรรภาระงานสำหรับพร็อกซี API คุณระบุจำนวนการตอบกลับได้ เกิดความล้มเหลวขึ้นก่อนที่เซิร์ฟเวอร์จะถูกนำออกจากการหมุนเวียนการจัดสรรภาระงาน การตอบกลับล้มเหลว หมายความว่า Apigee ไม่ได้รับการตอบสนองจากเซิร์ฟเวอร์เป้าหมายเลย ในกรณีนี้ ระบบจะแสดงข้อผิดพลาด ทีละ 1 ตัวนับ เมื่อ Apigee ได้รับการตอบสนองจากเป้าหมาย แม้ว่า การตอบกลับคือข้อผิดพลาด HTTP (เช่น 500) ซึ่งนับเป็นการตอบกลับจากเซิร์ฟเวอร์เป้าหมาย แล้วระบบจะรีเซ็ตตัวนับความล้มเหลว เพื่อช่วยให้แน่ใจว่าการตอบกลับ HTTP ที่ไม่ถูกต้อง (เช่น 500) ยัง เพิ่มตัวนับความล้มเหลวเพื่อนำเซิร์ฟเวอร์ที่มีประสิทธิภาพไม่ดีออกจากการหมุนเวียนการจัดสรรภาระงาน คุณสามารถเพิ่มเอลิเมนต์ <ServerUnhealthyResponse> ใหม่ได้ในเร็วๆ นี้ ที่มีองค์ประกอบย่อย <ResponseCode> รายการสำหรับการกำหนดค่าตัวจัดสรรภาระงาน Edge จะนับการตอบกลับที่มีรหัสเหล่านั้นเป็นความล้มเหลวด้วย

<HTTPTargetConnection>
  <LoadBalancer>
    <Algorithm>RoundRobin</Algorithm>
    <Server name="target1" />
    <Server name="target2" />
    <ServerUnhealthyResponse>
        <ResponseCode>500</ResponseCode>
        <ResponseCode>502</ResponseCode>
        <ResponseCode>503</ResponseCode>
    </ServerUnhealthyResponse>
    <MaxFailures>5</MaxFailures>
  </LoadBalancer>
</HTTPTargetConnection>
  
  
130416715 ความปลอดภัย

การเพิ่มประสิทธิภาพนโยบาย AccessControl

นโยบาย AccessControl จะกำหนดที่อยู่ IP ที่เรียกใช้พร็อกซี API ได้ องค์ประกอบใหม่ในนโยบายนั้นช่วยให้นักพัฒนา API ควบคุมการระบุ IP ได้มากขึ้น ที่อยู่ที่จะประเมิน

<IgnoreTrueClientIPHeader>: ไม่บังคับ (ค่าเริ่มต้นคือ false) เมื่อตั้งค่าเป็น "จริง" นโยบายจะไม่สนใจส่วนหัว True-Client-IP และ ประเมินที่อยู่ IP ในส่วนหัว X-Forwarded-For ตาม X-Forwarded-Forการประเมิน ที่คุณกำหนดค่าไว้

<AccessControl async="false" continueOnError="false"
    enabled="true" name="Access-Control-1">
    <DisplayName>Access Control-1</DisplayName>
    <IgnoreTrueClientIPHeader>true</IgnoreTrueClientIPHeader>
    ...
</AccessControl>
Apigee ได้เผยแพร่การอัปเดตต่อไปนี้เมื่อวันที่ 18 เมษายน 2019
117558815,
119856499,
110548137,
79526748,
72989449,
70712859,
69049041
รันไทม์ของ API JWS และ JWT
เราได้เพิ่มนโยบายใหม่สำหรับฝ่ายสนับสนุนของ JWS และปรับปรุงนโยบาย JWT ที่มีอยู่ของเรา

โปรดดูรายละเอียดที่หัวข้อ โพสต์ชุมชนนี้

122610025 รันไทม์ของ API อนุญาตให้ RaiseFault ตั้งค่าเหตุผลของข้อผิดพลาดและตัวแปรที่กําหนดเองใน AssignMessage ด้วย

มีองค์ประกอบใหม่ 2 รายการที่มีอยู่ในนโยบาย RaiseFault เพื่อสร้าง FaultRules ต้องดูสะอาดตาและมีประสิทธิภาพมากขึ้น

  • ShortFaultReason เป็นบูลีนที่เมื่อตั้งค่าเป็น "จริง" จะใส่ชื่อนโยบายในตัวแปร fault.reason
  • AssignVariable ซึ่งมีให้ใช้งานใน FaultResponse ให้คุณกำหนดการตอบสนองข้อผิดพลาดไปยังตัวแปรที่จะใช้โดยนโยบายอื่นๆ ในขั้นตอนพร็อกซี API
121149811 เป้าหมายที่โฮสต์ ขีดจำกัดที่บังคับใช้กับเป้าหมายที่โฮสต์

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

117659213 รันไทม์ของ API กำหนดพารามิเตอร์ช่วง IP ในนโยบาย AccessControl

ตอนนี้คุณสามารถใช้ตัวแปรเทมเพลตข้อความเพื่อตั้งค่าที่อยู่ IP และมาสก์ CIDR บน นโยบาย AccessControl เช่น ถ้าต้องการจัดเก็บ ที่อยู่ IP และมาสก์ในแมปค่าคีย์ (KVM) คุณสามารถดึงค่าเหล่านั้นจากตัวแปรที่คุณตั้งค่าไว้ได้ ในขั้นตอนพร็อกซี API ซึ่งจะช่วยให้คุณเปลี่ยนค่า IP ได้ง่ายขึ้นขณะรันไทม์โดยไม่ต้อง เปลี่ยนการกำหนดค่านโยบาย

ตัวอย่างเช่น แทนที่จะป้อนสิ่งต่อไปนี้

<MatchRule action="DENY">
    <SourceAddress mask="24">198.51.100.1</SourceAddress>
</MatchRule>
     

คุณสามารถกำหนดค่านโยบายแบบนี้ โดยสมมติว่าค่าถูกเก็บไว้ใน KVM และใช้นโยบาย KeyValueMapOperations เพื่อดึงค่าและกำหนดให้กับ ตัวแปรที่แสดงที่นี่

<MatchRule action="DENY">
    <SourceAddress mask="{kvm.mask.ref}">{kvm.ip.ref}</SourceAddress>
</MatchRule>
     
113599885 การตรวจสอบ API บทบาทการตรวจสอบ API

การตรวจสอบ API มี 2 บทบาท ได้แก่ ผู้ดูแลระบบการตรวจสอบ API และผู้ใช้การตรวจสอบ API ตามที่อธิบายไว้ใน Access API Monitoring โดยมีพร้อมให้ใช้งานในเดือนธันวาคม 2018

132256772 รันไทม์ของ API เพิ่มส่วนหัว X-Apigee.Message-Timeout ในคำขอ

ตอนนี้ Edge จะเพิ่มส่วนหัว X-Apigee.Message-Timeout ในคำขอแต่ละรายการ ส่วนหัวนี้ มีไว้สำหรับใช้ภายในโดย Edge โปรดอย่าใช้ค่าในส่วนหัว X-Apigee* ในพร็อกซี API ของคุณ เนื่องจากส่วนหัวเหล่านี้ไม่ได้มีไว้สำหรับการใช้งานของลูกค้า และ Apigee สามารถนำออกหรือเปลี่ยนแปลงได้ทุกเมื่อ

78575018 Private Cloud / OPDK ข้ามเซิร์ฟเวอร์การจัดการเพื่อข้ามการลงทะเบียนพื้นที่เก็บข้อมูลของเกตเวย์เมื่อมีพ็อดเกตเวย์หลายรายการ

แก้ไขข้อบกพร่องแล้ว

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

รหัสปัญหา ชื่อคอมโพเนนต์ คำอธิบาย
Apigee ได้เริ่มเปิดตัวการแก้ไขต่อไปนี้ในวันที่ 3 ธันวาคม 2019
การแก้ไขด้านความปลอดภัย
Apigee ได้เริ่มเปิดตัวการแก้ไขต่อไปนี้ในวันที่ 29 ตุลาคม 2019
139381794 เซิร์ฟเวอร์การจัดการ

จัดการข้อผิดพลาดในการลบคีย์สโตร์เพื่อไม่ให้การเรียก API ล้มเหลว

Apigee ได้เริ่มเปิดตัวการแก้ไขต่อไปนี้ในวันที่ 1 ตุลาคม 2019
140761319 รันไทม์ของ API

x-apigee.edge.execution.sense.action ได้รับการตั้งค่าเป็น Null เสมอ

139091614 รันไทม์ของ API

ในนโยบาย ResponseCache ทาง NIOTheread กำลังดำเนินการโดยไม่มีการปฏิเสธจาก กลุ่มชุดข้อความ

131331305 บริการหลัก

ผู้ส่งออกบันทึกหลายรายบนเราเตอร์ Apigee ทำให้มีการใช้ CPU สูง

136690640 รันไทม์ของ API

404 ที่ไม่เสถียรในบางองค์กร

140948100 รันไทม์ของ API

โฟลว์ที่แชร์ที่ทำให้ใช้งานได้แล้วไม่ทำงานบนตัวประมวลผลข้อความบางรายการ

Apigee ได้เปิดตัวการแก้ไขต่อไปนี้เมื่อวันที่ 13 กันยายน 2019
132654321 เซิร์ฟเวอร์การจัดการ บันทึกการตรวจสอบไม่แสดงข้อมูล
131246911 เซิร์ฟเวอร์การจัดการ สำหรับอีเมลของนักพัฒนาแอปในพอร์ทัล ให้เปิดใช้การสนับสนุนสำหรับโดเมนใหม่ๆ เช่น *.games, *.asia
Apigee ได้เปิดตัวการแก้ไขต่อไปนี้เมื่อวันที่ 18 เมษายน 2019
123844598 เซิร์ฟเวอร์การจัดการ คุณจะนำเข้าคีย์แอปที่ลบแล้วซ้ำอีกไม่ได้หลังจากผ่านไปแล้ว 24 ชั่วโมง
123588156 รันไทม์ของ API การนำส่วนหัว Content-Length ออกจากการตอบกลับไม่สำเร็จด้วย 304
122732400 รันไทม์ของ API การตั้งค่า api.timeout จะลบล้าง io.timeout.millis
122545281 รันไทม์ของ API มาสก์ข้อมูล DebugSession สำหรับ JSON ควรพิจารณากรณีที่ jsonPayload เป็นอาร์เรย์
122355807 เซิร์ฟเวอร์การจัดการ ลักษณะการทำงานที่ไม่ถูกต้องของสิทธิ์สำหรับผู้ใช้ที่มีหลายบทบาท
121393556 รันไทม์ของ API x_apigee_fault_code ถูกตั้งค่าเป็น "org/codehaus/jackson/map/ObjectMapper"
120998548 UI ของ Edge คำผิดในข้อความแสดงข้อผิดพลาด: ใบรับรองไม่ถูกต้องหรือไม่น่าเชื่อถือ
120990929 รันไทม์ของ API การตอบกลับ HTTP-413 จาก Nginx/Apigee-Router จะแสดงประเภทเซิร์ฟเวอร์
120799489 รันไทม์ของ API เมื่อใช้ httpClient ที่มี httpComplete() ให้กับ JavaScript Callback แบบอะซิงโครนัส เอาต์พุต Debugsession (Trace) จะถูกปิดเสียง
120794339 รันไทม์ของ API ส. ที่ผ่านการดัดแปลงสำหรับองค์กร
120277011 เซิร์ฟเวอร์การจัดการ ต้องตรวจสอบอินพุต: ติดตั้งใช้งานพร็อกซีไม่ได้หากชื่อโฮสต์ของเซิร์ฟเวอร์เป้าหมายมี **
119976417 การตรวจสอบ API การตรวจสอบ API แสดงเวลาการตอบสนองของพร็อกซีที่สูง ขณะที่ Analytics แสดงเวลาการตอบสนองเป้าหมายที่สูง
119947481 รันไทม์ของ API ในสถานการณ์ข้อยกเว้น ระบบจะบันทึกเพย์โหลดที่จะมาสก์เป็นข้อความธรรมดา
119877164 Private Cloud / OPDK เราเตอร์สร้างข้อผิดพลาด ตัวประมวลผลข้อความจะออฟไลน์เมื่อเปิดใช้ TLS

การแก้ไขนี้จะรวมอยู่ใน Edge ครั้งถัดไปสำหรับ Private Cloud

119816218 รันไทม์ของ API แคชการตอบกลับจะไม่ประมวลผลส่วนหัว "วันที่หมดอายุ" หากเปลี่ยนเป็น 0 หรือหมายเลขลบ
119770242 รันไทม์ของ API การสื่อสารของเราเตอร์กับ MP ล้มเหลวซึ่งก่อให้เกิดช่วงพักโดยสมบูรณ์: ข้อผิดพลาดใน PostClientFlow ทำให้เกิดลูปที่ไม่สิ้นสุด
119443145 เซิร์ฟเวอร์การจัดการ พร็อกซี API แสดงผล 404 เมื่อเปลี่ยนชื่อ ProxyEndpoint และทำให้ใช้งานได้อีกครั้ง
119260281 รันไทม์ของ API \"แยกวิเคราะห์เป็นสตริงไม่ได้3000.0\" บันทึกข้อผิดพลาด
118743407 เซิร์ฟเวอร์การจัดการ ระยะเวลาการทำให้พร็อกซี Apigee ใช้งานได้
118447966 รันไทม์ของ API เกิดข้อผิดพลาดในข้อความไฮไลต์ JavaScript ใน MP รุ่น 180608_07
117549719 รันไทม์ของ API URL คำขอและเส้นทางฐานพร็อกซีไม่ตรงกัน
117219520 รันไทม์ของ API MessageLggle: ตัวบันทึก Syslog ใช้รูปแบบวันที่ที่ไม่ถูกต้องเป็นค่าเริ่มต้น แสดงมิลลิวินาทีอย่างไม่ถูกต้อง
117116435 รันไทม์ของ API ข้อผิดพลาดเป็นระยะๆ จากไฟล์ JavaScript
117091520 รันไทม์ของ API Javaข้อความไฮไลต์s ล้มเหลวหลังจากโปรแกรมประมวลข้อความเปิดตัว 18.06.08
116165318 รันไทม์ของ API การติดตั้งใช้งานแพ็กเกจเดียวกันพร้อมกันจะทำให้เกิด RepositoryException
116055025 บริการ Configstore ตัวประมวลผลข้อความไม่มีโฮสต์และแอปพลิเคชันเสมือนหลังจากเปิดเครื่อง
115614498 รันไทม์ของ API ต้องการการสนับสนุนสำหรับ ILB ใน OPDK

การแก้ไขนี้จะรวมอยู่ใน Edge ครั้งถัดไปสำหรับ Private Cloud

113972537 รันไทม์ของ API P1 หลายตัว - NullPointerException เพิ่มขึ้นจากโค้ด Node.js ในพร็อกซี Trireme - ข้อผิดพลาดภายในเซิร์ฟเวอร์ 500
113904969 การสนับสนุน Apigee ปัญหาเกี่ยวกับการลบพร็อกซี API ในองค์กรสาธิต
113554802 รันไทม์ของ API ตรวจสอบการยืนยัน SAML ไม่สำเร็จด้วย NullPointerException
113315737 เซิร์ฟเวอร์การจัดการ การทำให้พร็อกซีใช้งานได้ล้มเหลวเนื่องจากไม่มีบันทึกการทำให้ใช้งานได้ใน Zookeeper
112767195 รันไทม์ของ API เกิดข้อผิดพลาดเป็นครั้งคราวใน DataStore ขณะเข้าถึงนโยบาย KVM
112162179 รันไทม์ของ API การแคชออบเจ็กต์ JavaScript โดยไม่กำหนดสตริงให้ออบเจ็กต์อาจทำให้เกิดการติดตายได้
111860576 รันไทม์ของ API ไม่มีข้อผิดพลาดในนโยบายโควต้า
111671525 เป้าหมายที่โฮสต์ โค้ดตอบกลับที่ไม่สำเร็จจากเป้าหมายที่โฮสต์จะทริกเกอร์โฟลว์ข้อผิดพลาดในพร็อกซี
111523933 ส่วนขยาย(เครื่องมือเชื่อมต่อ) ปัญหาการแคชนโยบายส่วนขยายไฮไลต์ของส่วนขยาย
111420263 รันไทม์ของ API ข้อยกเว้น ConcurrentModification ใน MessageLนั้นๆ
110843526 เซิร์ฟเวอร์การจัดการ Management API สำหรับการสร้าง/อัปเดต Flow Hook ควรตรวจสอบความถูกต้องของขั้นตอนที่แชร์
110805739 รันไทม์ของ API ไม่ได้ตั้งค่า TTL เป็น -1 ในขั้นตอน CPS เมื่อ Reuserefreshtoken เป็นจริง และไม่ได้ตั้งค่าการหมดอายุของโทเค็นการรีเฟรชอย่างชัดเจน
110429629 รันไทม์ของ API นโยบาย BasicAuthentication จะส่งตัวแปร request.headers.Authorization ลงใน DebugSession
110425503 รันไทม์ของ API การโหลดซ้ำ Nginx ทำให้เกิดปัญหาความพร้อมใช้งานของ MP
110311540 รันไทม์ของ API NPE เมื่อ MP ปิดตัวลง
110161455 รันไทม์ของ API AccessEntity ควรใช้การดึงข้อมูลตามเมธอดชื่อแอปแทนการดึงข้อมูลแอปทั้งหมดสำหรับองค์กร CPS
90695522 รันไทม์ของ API context.proxyRequest.asForm สร้าง java.lang.ArrayIndexOutOfBoundsException: 1
79734096 เซิร์ฟเวอร์การจัดการ บันทึกการตรวจสอบสำหรับพร็อกซีจะไม่กรองพร็อกซีอีกต่อไป
78105568 เซิร์ฟเวอร์การจัดการ การทำให้โฟลว์ที่แชร์ใช้งานได้ไม่แสดงใน /org/{org}/sharedflows/{sharedflow}/deployments Management API หลังจากอัปเดตโฟลว์ที่แชร์ที่ทำให้ใช้งานได้แล้ว
77528868 Trireme การถดถอยตรีม: ออกจากสคริปต์ Server.js แล้วโดยมีรหัสสถานะ -1: ไม่พบพร็อพเพอร์ตี้ 0
73766568 รันไทม์ของ API การอัปเกรด 170213_02 เป็น 171117_01 ทำให้เวลาในการตอบสนองสำหรับพร็อกซีที่มีเป้าหมาย Trireme/Node เพิ่มขึ้นอย่างมาก
72710481 รันไทม์ของ API CacheServiceImpl/CacheMemoryLimiter NullPointerException
68861063 รันไทม์ของ API จัดการ NPE ระหว่างการปิดเราเตอร์
68833699 รันไทม์ของ API บางครั้งข้อมูลเกี่ยวกับพร็อกซี API จะไม่ถูกนำออกจากโครงสร้างการจัดประเภท API
67377575 เป้าหมายที่โฮสต์ ระเบียน Analytics และข้อมูลที่ส่งให้ลูกค้าในพร็อกซี Node.js ไม่ตรงกัน
112481174 เป้าหมายที่โฮสต์ ไม่ล้มเหลวในการยกเลิกการทำให้พร็อกซีใช้งานได้เนื่องจากข้อผิดพลาดของ Turbo
117171470 เป้าหมายที่โฮสต์ แก้ไขข้อความแสดงข้อผิดพลาด app.yaml ที่ไม่ถูกต้อง
67169139 รันไทม์ของ API รูปแบบการประทับเวลา Syslog ของนโยบาย MessageLaking ไม่ถูกต้อง
67165418 รันไทม์ของ API ข้อผิดพลาดในการออกใบอนุญาตเกี่ยวกับการใช้โปรเซสเซอร์ข้อความจำนวนมากขึ้นแม้จะใช้น้อยกว่าที่ใบอนุญาต

การแก้ไขนี้จะรวมอยู่ใน Edge ครั้งถัดไปสำหรับ Private Cloud

67165195 รันไทม์ของ API VerifySAMLAssertion ไม่ได้ยืนยันลายเซ็นใน Assertion ที่ฝังอยู่ในการตอบกลับที่ลงชื่อ
66214414 รันไทม์ของ API ตัวแปร Currentstep.flowstate แสดงผล \"SHARED_FLOW\" เสมอ เมื่ออ้างอิงจากขั้นตอนที่แชร์
65731656 รันไทม์ของ API Threat Protection API ทำงานล้มเหลวเป็นระยะๆ สำหรับคำขอเดียวกัน
133197060 รันไทม์ของ API ได้รับระยะหมดเวลา 57 เกตเวย์จาก MP ไปยังเป้าหมาย
110535186 รันไทม์ของ API Serviceข้อความไฮไลต์ที่ไม่มีเอลิเมนต์การตอบกลับและ HTTPTargetConnection ชี้ไปยัง พร็อกซี: ไม่มีการโทร SOMETIMES ครั้ง
132443137 รันไทม์ของ API เปลี่ยนการทำงานของโปรแกรมประมวลผลข้อความให้ไม่สนใจส่วนหัวที่ขึ้นต้นด้วย X-Apigee-* ดังนั้น คุณจึงต้องเปลี่ยนโครงสร้างภายในโค้ดที่ใช้ X-Apigee-* และแทนที่ส่วนหัวเหล่านั้นด้วยส่วนหัวที่รองรับ
125709964 รันไทม์ของ API ทำให้แคชไม่ถูกต้องด้วย clearChildEntries ไม่ทำงานตามที่คาดไว้