dongshao8471 2019-02-19 01:45
浏览 103

查看“打开文件描述符”

I have a webpage where the backend is written in Go and running on Ubuntu, and after a certain amount of days and activity, like clockwork, the goroutine will throw a 'panic' and start giving 502 proxy errors. The error I'm getting in Go is "too many open files."

After doing some research, I feel that I've narrowed the issue down to having too many "open file descriptors." I have read different proposed solutions which seem to have varying results for different people. That is all fine, but if I wanted to actually view these supposedly open file descriptors in realtime so that I can actually pinpoint what these "files" are how would I do that? I ask this because rather than try to guess as to which parts of my Go program are causing this I'd like to see if I can narrow things down even further (possibly to a MySQL socket that's not closing properly, or an OS file also not closing properly, etc.)

  • 写回答

1条回答 默认 最新

  • douji0108 2019-02-19 02:08
    关注

    You can use the lsof command (Linux) to "list open files". There will be a lot of output so it's good to filter the output by using options. lsof -p <PID> might be useful if you know the PID of your process. Use the ps command to find the PID.

    评论

报告相同问题?

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?