Golang Service Exceeded File Handle Limit (too many open files)
Golang Service Exceeded File Handle Limit (too many open files) Check system config: ulimit -a | grep open. The system config is normal.
Check the service file limit: cat /proc/40636/limits. The service did not inherit the system settings and is still limited to 1024.
Check open file count: lsof -p 40636 | wc -l. It exceeds the limit, so the error occurs.
Check which connections are open: lsof -p 40636 > openfiles.log. Many HTTP connections were left open to the alerting service. The root cause is that the app failed to parse config, sent errors to the alerting service, and did not close connections, leading to too many open files. Why it did not inherit system limits needed more investigation.