Hi Audrey,
Thanks for being open to my suggestion. Understood that since this involves manual work on your side, mapping 200 request IDs to IPs would be a lot. I’ve included an example below with just 30, which I hope is more manageable.
I’m not able to set a custom user-agent string, but as you’ll see below, I’m using Hasura, and the user-agent in all of the requests is hasura-graphql-engine/v1.3.3
. That’s not unique to me, but I hope it’s uncommon enough on your side that it helps with the filtering. I can also set an arbitrary http header if that would be helpful.
To generate this example, I made 200 requests with a concurrency of 10. All of these requests went through the same Hasura server as a proxy to invoke the Netlify function. I ran batches of 200 a few times before ultimately observing a 502 error (consistent with the ~0.1% overall failure rate I’ve been seeing). In the run that generated a 502, it occurred about a third of the way through. From those 200 requests, I’ve included below just the one request that failed along with the successful requests sent shortly before and after, for a total of 30. Hopefully that’s a manageable number.
As you’ll see, the failed request doesn’t obviously stand out from the successful ones aside from having a longer response time. Several requests were issued just a few milliseconds before and after the failed one, and they succeeded. That doesn’t seem consistent with the stale IP hypothesis, but let’s see whether the IP address for the failed request is different from the surrounding successful ones.
Note: the timestamps below won’t exactly match what you see, since they’re from my own machine’s clock and include additional network latency.
CSV:
requestAt,responseAt,httpStatusCode,userAgent,netlifyRequestId
2022-03-23T01:31:44.808Z,2022-03-23T01:31:45.088Z,200,hasura-graphql-engine/v1.3.3,01FYT6DDVS12S043A457QM54JH
2022-03-23T01:31:44.809Z,2022-03-23T01:31:45.082Z,200,hasura-graphql-engine/v1.3.3,01FYT6DDVR0NK1WFG44M9H7EVX
2022-03-23T01:31:44.817Z,2022-03-23T01:31:45.113Z,200,hasura-graphql-engine/v1.3.3,01FYT6DDWQWRWF98FY9QD875KF
2022-03-23T01:31:44.819Z,2022-03-23T01:31:45.114Z,200,hasura-graphql-engine/v1.3.3,01FYT6DDWPWT9VPH5E7ZHMBPZN
2022-03-23T01:31:44.820Z,2022-03-23T01:31:45.115Z,200,hasura-graphql-engine/v1.3.3,01FYT6DDWQV36DZM8MBWJVRV56
2022-03-23T01:31:44.823Z,2022-03-23T01:31:45.117Z,200,hasura-graphql-engine/v1.3.3,01FYT6DDWP0THBSKDJV6S01SK7
2022-03-23T01:31:44.825Z,2022-03-23T01:31:45.111Z,200,hasura-graphql-engine/v1.3.3,01FYT6DDWBQFHDDCJMG0ETC93M
2022-03-23T01:31:45.060Z,2022-03-23T01:31:45.336Z,200,hasura-graphql-engine/v1.3.3,01FYT6DE42HWWQJHRTP70X445Z
2022-03-23T01:31:45.076Z,2022-03-23T01:31:45.387Z,200,hasura-graphql-engine/v1.3.3,01FYT6DE5B0QG2C652PV6079DR
2022-03-23T01:31:45.082Z,2022-03-23T01:31:45.367Z,200,hasura-graphql-engine/v1.3.3,01FYT6DE59XGR34VT8ECVC99YF
2022-03-23T01:31:45.088Z,2022-03-23T01:31:45.382Z,200,hasura-graphql-engine/v1.3.3,01FYT6DE5AWPAWA8FPNRQA2Y0X
2022-03-23T01:31:45.102Z,2022-03-23T01:31:45.397Z,200,hasura-graphql-engine/v1.3.3,01FYT6DE5X18MAC8XBJTAS38P1
2022-03-23T01:31:45.111Z,2022-03-23T01:31:45.372Z,200,hasura-graphql-engine/v1.3.3,01FYT6DE5AK26ZRPNDY1RWAE4K
2022-03-23T01:31:45.113Z,2022-03-23T01:31:45.392Z,200,hasura-graphql-engine/v1.3.3,01FYT6DE5K81D441M3S9MZ5SP3
2022-03-23T01:31:45.115Z,2022-03-23T01:31:45.887Z,502,hasura-graphql-engine/v1.3.3,01FYT6DE62EZ1RK1T21X7D093Z
2022-03-23T01:31:45.116Z,2022-03-23T01:31:45.390Z,200,hasura-graphql-engine/v1.3.3,01FYT6DE5KW2HG7Q5D7N4TNRAY
2022-03-23T01:31:45.117Z,2022-03-23T01:31:45.385Z,200,hasura-graphql-engine/v1.3.3,01FYT6DE5XHPN0DGRVBA9RNBXG
2022-03-23T01:31:45.338Z,2022-03-23T01:31:45.614Z,200,hasura-graphql-engine/v1.3.3,01FYT6DECN3XCPAS72WAB7YXMG
2022-03-23T01:31:45.368Z,2022-03-23T01:31:45.650Z,200,hasura-graphql-engine/v1.3.3,01FYT6DED9WR1TYDQ04M7CG91E
2022-03-23T01:31:45.373Z,2022-03-23T01:31:45.657Z,200,hasura-graphql-engine/v1.3.3,01FYT6DEDAWNQZ29QEW2X16EX0
2022-03-23T01:31:45.382Z,2022-03-23T01:31:45.662Z,200,hasura-graphql-engine/v1.3.3,01FYT6DEDMVMF6CA3RYEEY001H
2022-03-23T01:31:45.385Z,2022-03-23T01:31:45.671Z,200,hasura-graphql-engine/v1.3.3,01FYT6DEDY9VEESTN1REBVE0V0
2022-03-23T01:31:45.387Z,2022-03-23T01:31:45.675Z,200,hasura-graphql-engine/v1.3.3,01FYT6DEDZ3JC0WJEQH49CKRQP
2022-03-23T01:31:45.390Z,2022-03-23T01:31:45.678Z,200,hasura-graphql-engine/v1.3.3,01FYT6DEDWVEXSF68XQG2J3ZTN
2022-03-23T01:31:45.392Z,2022-03-23T01:31:45.673Z,200,hasura-graphql-engine/v1.3.3,01FYT6DEDZMXXT64TPK9PTKZSM
2022-03-23T01:31:45.397Z,2022-03-23T01:31:45.698Z,200,hasura-graphql-engine/v1.3.3,01FYT6DEF5KAG87DFC7TPR1RES
2022-03-23T01:31:45.615Z,2022-03-23T01:31:45.890Z,200,hasura-graphql-engine/v1.3.3,01FYT6DENMCYZ363AZJQB5MVXW
2022-03-23T01:31:45.651Z,2022-03-23T01:31:45.925Z,200,hasura-graphql-engine/v1.3.3,01FYT6DEPH64WCKH5B8XNR21KV
2022-03-23T01:31:45.658Z,2022-03-23T01:31:45.918Z,200,hasura-graphql-engine/v1.3.3,01FYT6DEPH7K2GF8K08EDX2Q50
2022-03-23T01:31:45.662Z,2022-03-23T01:31:45.922Z,200,hasura-graphql-engine/v1.3.3,01FYT6DEPHNP71SMAFJ56764VZ