Understanding socket connection issues
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- python
- Ambito
- backend, observability-sre
Direzione di ricerca
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.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
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}
}
- Lingua principale
- Python
- Stelle
- 77
- Fork
- 19
- Merge medio
- 1g 9h
- PR unite (30g)
- 5
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di scoutapp/scout_apm_python
-
botwork
Difficoltà 4/5 3-5 giorni Idoneità per principianti 42/100
scoutapp/scout_apm_python#841 ·
-
botwork
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
scoutapp/scout_apm_python#837 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
scoutapp/scout_apm_python#815 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 45/100
scoutapp/scout_apm_python#791 ·
-
enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
scoutapp/scout_apm_python#789 ·
Tutte le issue di scoutapp/scout_apm_python
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
browser-use/browser-use#5905 ·
-
type: enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
ynput/ayon-python-api#363 ·
-
bug needs triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
modelscope/FunASR#3728 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
open-compass/opencompass#2655 ·