O Beagle usa o sistema de log unificado recomendado pela Apple para fornecer diferentes mensagens de log em estágios de um fluxo Server Driven.
As mensagens de log fornecidas para o Beagle iOS podem ser acessadas através do:
Eles são divididos em 4 categorias:
parse
.É possível desabilitar as mensagens de log acionadas não configurando um Logger nas dependências.
As mensagens de log podem ser filtradas usando esses nomes de categorias e o identificador do pacote principal do aplicativo como um subsistema.
Siga os passos abaixo para filtrar as mensagens de log:
Paso 1: abra o Console App
;
Passo 2: selecione device
no menu Devices
;
Passo 3: insira os filtros na barra de pesquisa, pesquise apenas mensagens de log com a categoria Rede no subsistema br.com.zup.BeagleDemoApp
Passo 4: ao abrir o aplicativo BeagleDemo
, você verá duas mensagens de log com a network category
, uma mostra que o Beagle fez uma solicitação e a outra indica a resposta.
Etapa 5: as mensagens de erro serão exibidas com um ponto amarelo no campo Type
, conforme mostrado abaixo:
Etapa 6: para selecionar a segunda mensagem de log recebida com um filtro de rede, você verá uma versão verbosa
desta resposta.
Etapa 7: o corpo da resposta contém a tela (Server Driven) e todos os seus atributos e especificações.
Para deixar o ambiente do Beagle aberto a modificações, os logs padrão da API podem ser substituídos por quaisquer outros. Os próximos passos explicam como substituir os logs da API:
Passo 1: implemente o protocolo BeagleLoggerType na classe que você deseja usar como API de log. Você verá que é necessário implementar os métodos:
log(_ log: LogType)
elogDecodingError(type: String)
Eles são chamados internamente pelo Beagle quando uma mensagem precisa ser acionada. Listamos um exemplo abaixo:
class CustomLogger: BeagleLoggerType {
func log(_ log: LogType) {
print(log.message)
}
func logDecodingError(type: String) {
print(type)
}
}
Passo 2: Vá para a configuração do seu projeto Beagle e atribua uma instância de classe para a dependência do logger
no BeagleDependencies
:
let dependencies = BeagleDependencies()
dependencies.logger = CustomLogger()
Beagle.dependencies = dependencies
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.