Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Understanding socket connection issues

Aperta
#554 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

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

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_socket path
  • noexec is set on the volume where core_agent_dir resides
  • Random things like core_agent_dir resides on a bind mount inside a docker container on an OSX host and creating a socket results in a name too long error. 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

  1. At https://github.com/scoutapp/scout_apm_python/blob/master/src/scout_apm/core/socket.py#L190
  2. Report the following data in a POST to https://checkin.scoutapp.com/apps/diagnostics.scout
  3. With URL parameters: ?key=#{org_key}&name=#{app_name}
  4. With Headers:
Agent-Hostname: #{socket.gethostbyname()}
Agent-Version: #{agent version}
Content-Type: application/octet-stream
  1. 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

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di scoutapp/scout_apm_python

Tutte le issue di scoutapp/scout_apm_python

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.