getappmap / getappmap/appmap-python
Capture native code calls
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Python
- Star
- 104
- Fork
- 17
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
Native code functions and methods have types.BuiltinFunctionType or types.BuiltinMethodType; they're currently explicitly skipped for hooking at https://github.com/applandinc/appmap-python/blob/bdaeab2eacad1e8478addd4afbf815d4ef91aa33/appmap/_implementation/recording.py#L160 and so can't be captured. One difficulty of handling these is that they don't have ordinary descriptors and wrapt, which is the library we're using to wrap code, doesn't handle this case.
Note to actually capture the call parameters #124 would need to be done, too.
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Đọc appmap/_implementation/recording.py tại logic skip được liên kết và kiểm tra cách wrapt được sử dụng để bọc mã thông thường. Xác định cách các lệnh gọi BuiltinFunctionType và BuiltinMethodType có thể được hook, sau đó đảm bảo các tham số của chúng được thu thập theo yêu cầu của issue #124.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- python
- Lĩnh vực
- devtools
- Loại issue
- Tính năng
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 35/100