GoogleCloudPlatform / GoogleCloudPlatform/opentelemetry-operations-python

Feature request: use the name of the Python application for the default log name

Aperta
#382 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Python
Stelle
83
Fork
46
Merge medio
11h 40m
PR unite (30g)
2

Descrizione

If the log name is missing from the list of attributes it falls back to a hard-coded default string:

- `otel_python_inprocess_log_name_temp`

It would be ideal to make the default name more intelligent, perhaps derived from the script name? For example:

- `./path/to/the/script.py` -> `script`
- `./path/to/the/scriptdir/main.py` -> `scriptdir`
- `python3` (interactive mode) -> `python3`

A sketch of the code might look something like:

```
def _get_entrypoint_script_name():
main_script_path = sys.argv[0]
if not main_script_path:
main_script_path = sys.executable
simple_script_name = os.path.basename(main_script_path).rstrip('.py')
return simple_script_name

def _get_default_log_name():
entrypoint_script_name = _get_entrypoint_script_name()
if entrypoint_script_name == 'main':
return os.path.dirname(os.path.abspath(sys.argv[0]))
return entrypoint_script_name
```

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia individuando il nome di log predefinito codificato e la gestione degli attributi del nome di log mancanti. Esamina il comportamento dell’entry point descritto tramite sys.argv[0] e sys.executable, quindi verifica come le invocazioni come script, directory-main e interattive debbano essere associate ai nomi. Il lavoro è completato quando il valore predefinito segue questi esempi senza modificare i nomi di log forniti esplicitamente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
python
Ambito
observability-sre
Tipo di issue
Funzionalità
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
38/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.