Understanding socket connection issues
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- python
- Lĩnh vực
- backend, observability-sre
Hướng nghiên cứu
Start at src/scout_apm/core/socket.py around line 190, where socket connection attempts are exhausted, and trace the available agent configuration and startup timing data. Implement the diagnostic POST to diagnostics.scoutapp.com with the specified headers, URL parameters, and body fields; done means exhausted connection attempts are reported with the requested socket and agent context.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
What
We'd like to track socket connection issues with the core agent so we can identify issues and fix them proactively.
Why
The socket connection might fail for multiple reasons, which might include
- Unable to create the
core_agent_dir - Unable to download (e.g outbound firewall prevents it)
- Permission denied to an already existing
core_agent_socketpath noexecis set on the volume wherecore_agent_dirresides- Random things like
core_agent_dirresides on a bind mount inside a docker container on an OSX host and creating a socket results in aname too longerror. https://github.com/moby/moby/issues/23545#issuecomment-226144475
No matter the issue, the end result is that the python agent will attempt to connect to the socket, fail, and ultimately stop trying after a few attempts. We'll start by tracking when the connection attempts are exhausted.
How
- At https://github.com/scoutapp/scout_apm_python/blob/master/src/scout_apm/core/socket.py#L190
- Report the following data in a
POSTtohttps://checkin.scoutapp.com/apps/diagnostics.scout - With URL parameters:
?key=#{org_key}&name=#{app_name} - With Headers:
Agent-Hostname: #{socket.gethostbyname()}
Agent-Version: #{agent version}
Content-Type: application/octet-stream
- With body data:
{
version: 1,
type: socket,
language: python,
agent_version: ${agent_version},
environment: #{app_environment},
node: #{socket.gethostbyname()},
time_since_startup: #{figure out how to determine this},
agent_config: #{json object/hash of key/value of the agent's config options}
}
- Ngôn ngữ chính
- Python
- Star
- 77
- Fork
- 19
- Merge trung bình
- 1 ngày 13 giờ
- Pull request đã merge (30 ngày)
- 7
Chuẩn bị môi trường
Chúng tôi chưa kiểm tra các tệp thiết lập môi trường của dự án này. Hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
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.
Issue khác của scoutapp/scout_apm_python
-
botwork
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 42/100
scoutapp/scout_apm_python#841 ·
-
botwork
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
scoutapp/scout_apm_python#837 ·
-
Ensure Elasticsearch 9 compatĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 20/100
scoutapp/scout_apm_python#815 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 45/100
scoutapp/scout_apm_python#791 ·
-
enhancement
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
scoutapp/scout_apm_python#789 ·
Tất cả issue của scoutapp/scout_apm_python
Issue tương tự
-
bug status/needs-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
prowler-cloud/prowler#12887 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area: desktop platform: macos priority: p3 status: ready type: enhancement
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
use-agent-os/agent-os#3484 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
open-telemetry/opentelemetry-python-contrib#5113 · 2 bình luận · 2 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
-
external
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
langchain-ai/docs#6255 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày