Projeto

Geral

Perfil

Tarefa #498

Verificar a rotina "Exibir Registro de Erros" dentro do módulo admin.

Adicionado por Alexandre Luiz Correia mais de 3 anos atrás. Atualizado mais de 1 ano atrás.

Situação:
Nova
Prioridade:
Normal
Atribuído para:
Categoria:
Admin
Versão:
Início:
13/06/2019
Data prevista:
% Terminado:

0%


Descrição

Verificar a rotina "Exibir Registro de Erros" dentro do módulo admin como funciona e decidir se será eliminada ou corrigida/testada.

Histórico

#1 Atualizado por Alexandre Luiz Correiaquase 3 anos

  • Versão alterado de Backlog para Expresso Livre - Milestone 38

#2 Atualizado por Alexandre Luiz Correiamais de 2 anos

A partir do item no menu Administrador->Exibir registro de erros, é possível acessar uma página com o título "Administrador - Exibir registro de erros" que aponta para a classe "class.uilog.inc.php" e a partir do método chamado "list_log" mostra-se a referida tela.

Procurando as chamadas para esta classe é possível chegar a tabela "phpgw_log" e "phpgw_log_msg" e dentro do banco de dados estas tabelas não possuem relacionamentos. Mas existe um "relacionamento" entre elas dentro do código do Expresso.A classe "class.errorlog.inc.php" ( phpgwapi/inc/class.errorlog.inc.php) tem uma função chamada "commit" que faz a inserção de dados nestas duas tabelas, primeiro insere os dados na tabela phpgw_log e em seguida recupera o id gerado na primeira transação e logo em seguida insere os dados com o id recuperado na outra tabela phpgw_log_msg.

Mas na função commit logo que se inicia, existe uma linha de "return true" ( que pelo comentário foi inserida pelo desenvolvedor jakjr ) e olhando o histórico dessa função tanto no redmine ( interno e externo) quanto no trac, não existe um ticket sobre esta modificação. Basicamente esta função quando chamada no código não está fazendo nenhum tipo de operação no banco pois como já foi comentado, existe um comando de retorno logo no início desta função.

    function commit()
    {
        // jakjr: where I disable the log event.
        return true;

Apenas complementando que o objeto "$GLOBALS['phpgw']->log" visto na classe que monta a tela de exibição de erros, está sendo criado dentro do arquivo functions.inc.php ( phpgwapi/inc/functions.inc.php ), na linha 268. Com este objeto criado é possível fazer a manipulação desses dados, inseri este comentário apenas para conhecimento.

    $GLOBALS['phpgw']->log          = CreateObject('phpgwapi.errorlog');

Depois dos comentários acima, verifiquei que está rotina não está sendo mais usada dentro do Expresso apesar das várias chamadas que existem dentro do código para ela.

#3 Atualizado por Mauricio Luiz Vianimais de 2 anos

  • Atribuído para ajustado para Alexandre Luiz Correia

Ficou esclarecido que a rotina quando chamada não está registrando nenhum log, pela existência do return logo no inicio da função.

Mas pelo comentário de que existem muitos locais no Expresso que lançam a rotina, então antes de decidir pela remoção, sugiro relacionarmos estas chamadas para esclarecermos se são relevantes, e poderiam ser ativadas, para algum benefício de uso.

#4 Atualizado por Anderson Tadayuki Saikawamais de 2 anos

  • Versão alterado de Expresso Livre - Milestone 38 para Expresso Livre - Milestone 39

#5 Atualizado por Mauricio Luiz Vianimais de 1 ano

  • Versão alterado de Expresso Livre - Milestone 39 para Backlog

Exportar para Atom PDF