GoogleCloudPlatform / GoogleCloudPlatform/opentelemetry-operations-python
Feature request: use the name of the Python application for the default log name
- 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