baobabsoluciones/mango

Implement traceback formatting with filtering

Offen

#150 geöffnet am 07.11.2024

 (0 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)Python (2 Forks)auto 404
good first issue

Repository-Metriken

Stars
 (3 Sterne)
PR-Merge-Metriken
 (Keine gemergten PRs in 30 T)

Beschreibung

In other projects I have been using functions like this one (maybe there are libraries that do something similar, airflow does):

def parse_traceback(exc_type, exc_value, tb):
    tb_parsed = traceback.format_tb(tb)
    cleaned_traceback = []

    for line in tb_parsed:
        # Find "super_secret" and remove everything before it, replacing with "***"
        cleaned_line = re.sub(
            r".*super_secret.*", r' "***', line
        )
        # Remove \n
        cleaned_line = cleaned_line.replace("\n", "")
        # Clean \t
        cleaned_line = cleaned_line.replace("\t", " ")
        # Remove more than 1 space
        cleaned_line = re.sub(r" {2,}", " ", cleaned_line)
        # If line empty skip it
        if cleaned_line:
            cleaned_traceback.append(cleaned_line)

    return " ".join(cleaned_traceback)
    

Contributor Guide