Issue with PID + timestamp disambiguation scheme for DS name

Đang mở
#5,739 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
25/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
linux

Hướng nghiên cứu

Bắt đầu bằng cách lần theo hành vi đặt tên pipe, lọc các tiến trình đã kết thúc và trích xuất PID được mô tả trong issue trên các công cụ chẩn đoán. Xác định cách phân biệt các pipe cũ và các tiến trình từ những namespace khác nhau, sau đó kiểm tra hành vi với các kịch bản container và tái sử dụng PID; issue không nêu tên các tệp hoặc test cụ thể.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

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.
Ngôn ngữ chính
C++
Star
1.3k
Fork
407
Merge trung bình
21 giờ 5 phút
Pull request đã merge (30 ngày)
78

Chuẩn bị môi trường

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

  • Không có Dockerfile hay tệp Docker Compose
  • Không có mẫu pull request
  • Không có hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của dotnet/diagnostics

Tất cả issue của dotnet/diagnostics

Issue tương tự

Thêm issue về C++

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.