Formação Oracle DBA Completa


Google Flogger – o framework Java para logs

Google Flogger – o framework Java para logs

6 de junho de 2019 0 Por Ramos de Souza Janones
Powered by Rock Convert

O Google recentemente anunciou o lançamento de um novo framework open source Java para logs chamado Flogger.

Reconhecendo que “a área de APIs open source Java para logs já está superlotada”, o Google afirma que o Flogger oferece “muitos benefícios sobre as APIs de logs existentes”. Essas melhorias incluem a redução no custo de mensagens de logs desabilitadas, melhoria geral na legibilidade e a extensibilidade de sua API.

O Flogger, uma combinação entre as palavras fluent e logger, argumenta que um dos seus principais benefícios é que “o log em níveis desabilitados é efetivamente sem custo”. Enquanto outros frameworks de log podem gerar bytecode mesmo quando o log está desabilitado, o Flogger foca em evitar isso completamente.

Mais especificamente, frameworks de log tipicamente utilizam varargs para aceitar um número de parâmetros desconhecidos em uma chamada a um método, ao invés de ter centenas, ou até milhares, de diferentes e imprevisíveis assinaturas de métodos. Este uso de varargs resulta em bytecode adicional, particularmente para alocar um Object[] para armazenar o varargs. Enquanto que um pouco de bytecode a mais normalmente não é uma preocupação, ela se torna particularmente importante em aplicações com um granularidade alta de logs ou quando os logs acontecem em um loop.

O Flogger evita este custo através do design de sua API. O encadeamento de chamadas à API sempre começa com um seletor de um nível de log específico, por exemplo, atInfo(). Este seletor retorna uma implementação para logar no nível especificado e, no caso do log estar desabilitado, uma implementação singleton não operacional pode ser retornada.

LEIA TAMBÉM:

– Como Aprender Java e além!

– Diferenças entre Java e Kotlin

Legibilidade é outra área em que o Flogger traz muitas melhorias. De acordo com o Google, o Flogger permite uma melhor “auto documentação dos logs” através do uso de sua API fluente. Como um exemplo, considere uma instrução de log típica que registra um erro junto com sua exceção.

log.error(“The arg, ‘{}’ caused an error”, arg, exception)

Curso completo de Games, inclusive Realidade Aumentada.Powered by Rock Convert

A mesma instrução pode ser codificada no Flogger utilizando:

logger.atError()
      .withCause(exception)
      .log("The arg, ‘%s’ caused an error", arg);

 

LEIA TAMBÉM:  GitHub e Facebook unem-se com a Atom-IDE

Além das melhorias na legibilidade, o Flogger foi projetado com extensibilidade em mente e permite extensões customizadas. Utilizando o Flogger, é “possível estender localmente a API e adicionar métodos na interface fluente”.

Até o momento, a documentação e exemplos de extensões customizadas são limitadas, mas um exemplo, dado pelo Google, é a criação de um UserLogger que faz o log por usuário, escrevendo o log separadamente do log principal.

logger.at(INFO)
      .forUserId(id)
      .log("Message: %s", param);

Maiores informações sobre o Flogger podem ser encontradas na página do Flogger no GitHub, além de um guia inicial e documentação sobre melhores práticas.

VOCÊ ESTÁ NAS SEÇÕES: Programação » Java 

Siga os bons!

Ramos de Souza Janones

Janones, é um empreendedor brasileiro apaixonado por empreendedorismo e tecnologia. Ao longo dos anos trabalhando com o desenvolvimento de softwares desktop desde a linguagem Clipper, passando pelo Delphi e atualmente com Java.

Optou pela formação de Publicidade e Marketing por sua segunda empresa de tecnologia ter participado do "boom" da internet nos anos 90 e na procura de melhorar seus conhecimentos em negócios.

Em razão da principal formação e profundos conhecimentos em programação e banco de dados, é capaz de realizar o desenvolvimento de aplicativos web, desktop e mobile com maior criatividade e inovação que profissionais de desenvolvimento com uma formação única e mais especifica, dedicada somente ao desenvolvimento de softwares.

Com toda sua experiência com empresas de software, sua formação e paixão por negócios escreveu o livro "Marketing para Empresas e Profissionais de Software", publicado pela editora carioca Ciência Moderna em 2012. Além de outros livros sobre programação.

Últimos posts por Ramos de Souza Janones (exibir todos)

Sumário
Google Flogger - o framework Java para logs
Nome do artigo
Google Flogger - o framework Java para logs
Descrição
O Google recentemente anunciou o lançamento de um novo framework open source Java para logs chamado Flogger.
Autor
Nome
Ramos da Informática
Logo



Frontend Do Zero Ao Profissional