ฉันประสบปัญหานี้เล็กน้อยและหวังว่าผู้ที่มีความเชี่ยวชาญมากกว่านี้จะสามารถช่วยเหลือได้
เรามีการทำ POST จาก เซิร์ฟเวอร์ ก ไปยังเว็บ API ที่โฮสต์บนเซิร์ฟเวอร์ของลูกค้าและรับข้อยกเว้นต่อไปนี้:
System.AggregateException: เกิดข้อผิดพลาดอย่างน้อยหนึ่งข้อ ---> System.Net.Http.HttpRequestException: เกิดข้อผิดพลาดขณะส่งคำขอ ---> System.Net.WebException: การเชื่อมต่อพื้นฐานถูกปิด: เกิดข้อผิดพลาดที่ไม่คาดคิดในการรับ ---> System.IO.IOException: ไม่สามารถอ่านข้อมูลจากการเชื่อมต่อการขนส่ง: ความพยายามในการเชื่อมต่อล้มเหลวเนื่องจากบุคคลที่เชื่อมต่อไม่ตอบสนองอย่างถูกต้องหลังจากช่วงระยะเวลาหนึ่งหรือการเชื่อมต่อที่สร้างไว้ล้มเหลวเนื่องจากโฮสต์ที่เชื่อมต่อไม่ตอบสนอง ---> System.Net.Sockets.SocketException: ความพยายามในการเชื่อมต่อล้มเหลวเนื่องจากบุคคลที่เชื่อมต่อไม่ตอบสนองอย่างถูกต้องหลังจากช่วงระยะเวลาหนึ่งหรือการเชื่อมต่อที่สร้างไว้ล้มเหลวเนื่องจากโฮสต์ที่เชื่อมต่อไม่ตอบสนอง
ที่ System.Net.Sockets.Socket.EndReceive (IAsyncResult asyncResult)
ที่ System.Net.Sockets.NetworkStream.EndRead (IAsyncResult asyncResult)
--- สิ้นสุดการติดตามสแต็กข้อยกเว้นภายใน ---
ที่ System.Net.Sockets.NetworkStream.EndRead (IAsyncResult asyncResult)
ที่ System.Net.PooledStream.EndRead (IAsyncResult asyncResult)
ที่ System.Net.Connection.ReadCallback (IAsyncResult asyncResult)
--- สิ้นสุดการติดตามสแต็กข้อยกเว้นภายใน ---
ที่ System.Net.HttpWebRequest.EndGetResponse (IAsyncResult asyncResult)
ที่ System.Net.Http.HttpClientHandler.GetResponseCallback (IAsyncResult ar)
--- สิ้นสุดการติดตามสแต็กข้อยกเว้นภายใน ---
--- สิ้นสุดการติดตามสแต็กข้อยกเว้นภายใน ---
ที่ System.Threading.Tasks.Task.ThrowIfExceptional (บูลีน includeTaskCanceledExceptions)
ที่ System.Threading.Tasks.Task`1.GetResultCore (Boolean waitCompletionNotification)
ที่ System.Threading.Tasks.Task`1.get_Result()
ที่ Infrastructure.Web.WebClient.WebClient.PostJson (String requestUri, Object para)
ที่ UtilityBelt.Operations.APICaller.btnPost_Click (ผู้ส่งวัตถุ, EventArgs e)
---> (ข้อยกเว้นภายใน #0) System.Net.Http.HttpRequestException: เกิดข้อผิดพลาดขณะส่งคำขอ ---> System.Net.WebException: การเชื่อมต่อพื้นฐานถูกปิด: เกิดข้อผิดพลาดที่ไม่คาดคิดในการรับ ---> System.IO.IOException: ไม่สามารถอ่านข้อมูลจากการเชื่อมต่อการขนส่ง: ความพยายามในการเชื่อมต่อล้มเหลวเนื่องจากบุคคลที่เชื่อมต่อไม่ตอบสนองอย่างถูกต้องหลังจากช่วงระยะเวลาหนึ่งหรือการเชื่อมต่อที่สร้างไว้ล้มเหลวเนื่องจากโฮสต์ที่เชื่อมต่อไม่ตอบสนอง ---> System.Net.Sockets.SocketException: ความพยายามในการเชื่อมต่อล้มเหลวเนื่องจากบุคคลที่เชื่อมต่อไม่ตอบสนองอย่างถูกต้องหลังจากช่วงระยะเวลาหนึ่งหรือการเชื่อมต่อที่สร้างไว้ล้มเหลวเนื่องจากโฮสต์ที่เชื่อมต่อไม่ตอบสนอง
ที่ System.Net.Sockets.Socket.EndReceive (IAsyncResult asyncResult)
ที่ System.Net.Sockets.NetworkStream.EndRead (IAsyncResult asyncResult)
--- สิ้นสุดการติดตามสแต็กข้อยกเว้นภายใน ---
ที่ System.Net.Sockets.NetworkStream.EndRead (IAsyncResult asyncResult)
ที่ System.Net.PooledStream.EndRead (IAsyncResult asyncResult)
ที่ System.Net.Connection.ReadCallback (IAsyncResult asyncResult)
--- สิ้นสุดการติดตามสแต็กข้อยกเว้นภายใน ---
ที่ System.Net.HttpWebRequest.EndGetResponse (IAsyncResult asyncResult)
ที่ System.Net.Http.HttpClientHandler.GetResponseCallback (IAsyncResult ar)
--- สิ้นสุดการติดตามสแต็กข้อยกเว้นภายใน ---<---
ข้อยกเว้นเกิดขึ้นในทุกการโทรจาก เซิร์ฟเวอร์ กแต่ด้วยเหตุผลบางอย่าง จะไม่มีข้อยกเว้นเกิดขึ้นเมื่อทำการโทรเดียวกันจากเครือข่ายท้องถิ่นของฉันหรือเซิร์ฟเวอร์อื่น
จะเห็นว่าโทรมาจาก เซิร์ฟเวอร์ ก กำลังเข้าถึง IIS บนเซิร์ฟเวอร์ของลูกค้า แต่ดูเหมือนว่าจะไปไม่ถึงตัวควบคุมใน API ของเว็บด้วยซ้ำ นี่คือรายการบันทึกในไฟล์บันทึก IIS:
12-08-2021 02:06:06 192.168.0.2 POST /customerAPI/api/users/LocaliseUser - 7878 - 123.123.123.123 - - 500 0 64 129122
หลังจากตรวจสอบอยู่ระยะหนึ่ง ฉันเปิดใช้งานการติดตามคำขอที่ล้มเหลว แต่ไม่สามารถรับข้อมูลเชิงลึกมากนักจากไฟล์ที่สร้างขึ้นซึ่งมีข้อมูลรายละเอียดจำนวนมากและคำเตือนสองข้อต่อไปนี้:

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