fluttercandies / extended_image

A powerful official extension library of image, which support placeholder(loading)/ failed state, cache network, zoom pan image, photo view, slide out page, editor(crop,rotate,flip), paint custom etc.
https://fluttercandies.github.io/extended_image/
MIT License
1.9k stars 499 forks source link

[Discussions] Best way to debug image loading #682

Open bdezso opened 3 months ago

bdezso commented 3 months ago

Content

We are encountering intermittent issues with image loading in our Flutter application, which uses AWS S3 for media storage and Bunny CDN for caching, and extended_image for image loading.

Current Setup:

• Media files are stored in AWS S3. • Bunny CDN is used for caching the data. • A few users report that images do not load in the app occasionally. • When tested on our end, the images always load correctly. • Users reporting the issue have good internet connections (verified via speed tests). • The issue typically resolves itself after a few days. Observations:

• Bunny CDN only logs requests that successfully go through, along with their status codes. Timeout requests are not logged. • In the Flutter app, we see the following error message: Bad state: Failed to load https://bunny-cdn.com/img.png Given these points, what would be the most effective way to debug this issue? I couldn't find detailed error message about the network issue.

Additional Information:

• We have verified that the images exist and are accessible. • The issue seems to occur sporadically and is not consistently reproducible.

Any insights or suggestions on how to approach and resolve this issue would be greatly appreciated.

zmtzawqlp commented 3 months ago

i can't open https://bunny-cdn.com/img.png with web browser, you should make sure the image is accessible

截屏2024-05-29 19 02 54
bdezso commented 3 months ago

Thats just an example url, I just want to demonstrate that the only error I got is a Bad State exception.

bdezso commented 3 months ago

@zmtzawqlp I just want to know what is the most detailed information I can get from the HTTP request, such as: