Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

About Error FileNotFoundError: [Errno 2] No such file or directory: '/proc/12825/stat' the some suggest #2418

Open
IT-IvDragon opened this issue May 20, 2024 · 11 comments
Labels

Comments

@IT-IvDragon
Copy link

when I was useing the function process_iter discover a not myself can catch the error。
For errors like FileNotFoundError: [Errno 2] No such file or directory: '/proc/xxx/stat'
I searched for problems in lssues , but found that the latest version didn't fix them. Through the source code found that this function only catch the NoSuchProcess exception,and this error I think is a problem with pids functino,pids from /proc dir fetch a unusua path,lead to open the path /proc/xxx/stat raised an exception,so we can do try/catch the FileNotFoundError error at the open file location。

@giampaolo
Copy link
Owner

I cannot understand much from your report. Please paste your code and the full traceback message.

@A1ines
Copy link

A1ines commented Jul 16, 2024

I cannot understand much from your report. Please paste your code and the full traceback message.

I encountered the same problem.
[Errno 2] No such file or directory: '/proc/1535931/stat'
After investigating,
I found that there are some anomalies with the /proc/1535931 directory. It doesn't contain the stat file, which causes the read error.
image
Since it runs on a server and I don't have permission to delete the anomalous process directory, I had to use a simple but effective method: skipping this PID.
image
Successfully run after modification.

@IT-IvDragon
Copy link
Author

IT-IvDragon commented Jul 16, 2024

you can in the function process_iter add try finally ,skip the pid when happen error。

image

@giampaolo
Copy link
Owner

giampaolo commented Jul 16, 2024

Are you saying file /proc/1535931/stat does not exist but directory /proc/1535931 exists? If that's the case, what's the content of directory /proc/1535931?

@IT-IvDragon
Copy link
Author

yes ,I met the problem just not exist stat file, the other file/directory in directory /proc/1535931 is exist,I think is Linux system because of some special circumstances not create the stat Or the /proc/1535931 directory wasn't deleted

@giampaolo
Copy link
Owner

giampaolo commented Jul 16, 2024

Can you do ls -la /proc/1535931 and paste the output?

@IT-IvDragon
Copy link
Author

I tried ls ,but cannot find the progress id ,just the /proc/1535931 dir

@giampaolo
Copy link
Owner

So the /proc/1535931 directory is empty?

@IT-IvDragon
Copy link
Author

not empty, there are some files, but no stat file

@giampaolo
Copy link
Owner

OK, paste those files. Paste the output of ls -la /proc/1535931 command.

@IT-IvDragon
Copy link
Author

@A1ines

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants