HelloZeroNet / HelloZeroNet/ZeroNet

[Android] Disable console logging if another logger is already hooked

Aberta
#2,139 14 comentários 1 reação 0 responsáveis Ver no GitHub
bug
Linguagem predominante
JavaScript
Estrelas
18.8k
Forks
2.3k
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

### Step 1: Please describe your environment

* ZeroNet version: 4163
* Operating system: Android 9 / LOS 16
* Web browser: Firefox Klar Android
* Tor status: not available
* Opened port: no
* Special configuration: android

### Step 2: Describe the problem:

#### Steps to reproduce:

1. Launch the zeronet android app (python3 branch) without the patch
2. Watch it crash in the logs

#### Observed Results:

* The log keeps spamming, as the kivy logger repeats the zeronet logger which then repeats the kivy logger, causing a log overflow

#### Expected Results:

* It should detect this other logger and don't register it's own

#### Current workarround:

I'm applying this patch:

```patch
diff --git a/src/main.py b/src/main.py
index dfc32cc9..9f21ef2c 100644
--- a/src/main.py
+++ b/src/main.py
@@ -52,7 +52,7 @@ if config.action == "main":
print("Error starting browser: %s" % err)
sys.exit()

-config.initLogging()
+config.initLogging(console_logging=False)


# Debug dependent configuration
```

Instead this variable could be dynamically set, based on whether or not another logger is registered

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

Comece em src/main.py e rastreie o ponto de entrada config.initLogging() usado quando o aplicativo Android é iniciado. Reproduza o crash com a branch python3 e inspecione como os loggers Kivy e ZeroNet são registrados. A tarefa estará concluída quando um logger existente for detectado ou o logging no console for desabilitado, para que o logging recursivo e o estouro do log não ocorram mais.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
android, python
Domínio
mobile-dev
Tipo de issue
Bug
Dificuldade
2/5
Tempo estimado
1-3 horas
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.