dotnet / dotnet/diagnostics

Issue with PID + timestamp disambiguation scheme for DS name

Open
#5,739 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
1.3k
Forks
404
Avg merge
2d 5h
Merged PRs (30d)
35

Description

A common setup for our tools within containers is to mount the directory the pipe will get created into (/tmp or TMPDIR) and then diagnostic tools running from a sidecar or a host can point to that same shared location and use them to run diagnostic queries. However, we use the names of the pipes to get information about the target process and that's something that is surfacing non-trivial edges around the experience.

- Our dead process logic filters our processes that are not alive in the current namespace.
- Live processes get info from using a pid extracted from the name - for example the `ps` command in most tools does this. The pid is in a namespace that might not be related to this one. the same pid might be unrelated things on this namespace and we print info for it.
- PID reuse makes it such that timestamp disambiguation isn't useful anymore. N containers might have proc 1 be a .NET process and all their pipes will be interesting. We need a better way to disambiguate stale pipes vs NS collisions.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.