underpop

http://underpop.online.fr 2005-07-24  

Entendendo o modo de depuração do XOOPS

Sumário:
  •   O que é DEBUG?
  • Ativando o DEBUG
  • Debug do PHP
  • Debug do MySQL/Blocos
  • Debug do Smarty
  • Ativando pelo Banco de Dados (PhpMyAdmin)
  • Resultados do DEBUG
  • Verificando resutado do debug do PHP
  • Verificando resutado do debug do MySQL/Blocos
  • Verificando resutado do debug do Smarty

1 - O que é DEBUG?

É um processo metódico de encontrar e de reduzir o número dos erros, ou os defeitos, em um programa de computador ou em parte de um hardware eletrônico, fazendo0os a voltarem a se comportar como esperado (programado). O Debugging tende a ser mais difícil quando há vários subsistemas acoplados, quando mudanças em um parte do código pode fazer com que os erros apareçam em outra.

A tradução mais tranquila para o termo DEBUG, a meu ver, é simplesmente tratamento de erros, mas enfim, pode haver diversas outras tradução que dificilmente vai estar errado. Para o pessoal que não gosta de termos estrangeiros em nossa língua, pode-se usar a expressão Depuração em vez de debug.

Um pouco de história: Segundo os dicionários "Oxford English Dictionary" e "Webster's New International Dictionary" esse termo foi usado primeiramente pelo inventor Thomas Edison durante o desenvolvimento de seu Fonógrafo para descrever os erros mecânicos de seu invento. O emprego deste termo para sistema de computadores é um pouco mais recente, sendo a autoria disputada por Glenford J. Myers (1976) e Grace Hopper (1940).

Para nós usuários do XOOPS, podemos resumir, dizendo que debug é a uma das principais ferramentas do CMS, pois na hora do desespero (não funcionamento) ela geralmente nos ajuda a ter uma saída para o problema.

[pagebreak]

2 - Ativando o DEBUG

O Debug do XOOPS pode ser ativado basicamente por duas formas, pelo Painel Administrativo (backend) ou pelo Banco de Dados (modo forçado).

A ferramenta Debug está subdividida em 03 (três) filtros para procura de erros, os quais são: Erros do PHP; Erros do MySQL/Blocos e Erros do Smarty.

A maior utilidade desta ferramenta está no tratamento de Erros do PHP, pois a programação do CMS é em PHP e a infinidade de programadores e versões de cores, módulos acabam eventualmente criando incompatibilidades.

Na minha experiência com XOOPS, usei muito pouco o tratamento de Erros do MySQL/Blocos e a maioria desses vezes foi apenas para teste ou estudo.

Já o tratamento de Erros do Smarty, tenho utilizado bastante, especialmente para modificar templates, pois o resultado desse filtro é muito útil para essa finalidade, tendo em vista que nos mostra todos os arquivos de templates e tag smart em uso atual (veja item 3.3).

Para ativar o debug é muito simples, e as três filtros têm muito em comum:

OBSERVAÇÃO: Se o seu portal estiver on-line (em funcionamento) o ideal é bloquear o portal para visitas. (Se você não sabe como fazer isso, veja ao final do artigo.)

2.1 - Ativando o Debug do PHP

a) Acesse o portal PHP em questão, realizando o Login com poderes de administrador



b) Clique em Administração



c) Sobre a figura do Sistema clique me Preferências



d) Em seguida clique em Configurações Gerais



f) Role a página de preferência até a linha indicada abaixo



g) Você vai encontrar a posição do "select list" em Desativado



h) Clique no "select list" e escolha a opção Exibir erros do PHP



i) Role a página até o final e clique em Ok



E o Debug já está ativado, para exibir os erros do PHP! (se houver)

2.2 - Ativando o Debug do MySQL/Blocos

Repita os procedimentos a até g do item 2.1

h) Clique no "select list" e escolha a opção Exibir erros do MySQL/Blocos



i) Role a página até o final e clique em Ok



E o Debug já está ativado, para exibir os erros do MySQL e dos Blocos! (se houver)

2.3 - Ativando o Debug do Smarty

Repita os procedimentos a até g do item 2.1

h) Clique no "select list" e escolha a opção Exibir erros do Smarty



i) Role a página até o final e clique em Ok



E o Debug já está ativado, para exibir os erros do Smarty! (se houver)

[pagebreak]

3 - Verificando os resultados do DEBUG

Agora que o Debug está ativado, navegue no seu site, normalmente, que se houver erros ele irá exibir, dessa forma simplifica a vida do webmaster em resolver o problemas, apontando-o diretamente para o erro.

3.1 - Verificando resultados do PHP

O Debug de erros do PHP exibe os resultados sempre após o rodapé da página, veja:



O resultado exibirá o tipo de erro, o arquivo e a linha que provoca o erro

3.2 - Verificando os resultados do MySQL/Blocos

Você observará que neste filtro do Debug, os resultados são exibidos em uma nova janela, e sempre será exibido as operações realizadas, e se houver erro aparecerá na requisição a palavra "Error" em vermelho.


O resultado exibe todas as "queries" ao banco de dados, em sequência os blocos lidos e se estão em cache, após exibe o tempo de execução da consulta.

3.3 - Verificando os resultados do Smarty

Neste filtro, os resultados são exibidos de forma semelhante a anterior, pois também são exibidos em nova janela, porém com "layout" diferente:



O resultado exibe em lista todas as templates em uso, tanto do tema como dos módulos e em seguida as tags smarty utilizadas e o conteúdo delas, por tal motivo que é útil para modificação de templates e até mesmo para saber se a tag está retornando o desejado.

4 - Debug Sarado

Essa ferramenta é show, "para quem programa ou quer programar" como diz o desenvolvedor dela (topet05).

Esta ferramenta é composta por um arquivo "globais.php" e para utilizar basta:

a) copiar o arquivo para a pasta root do XOOPS.
b) executar o arquivo, exemplo:



O resultado será impresso na tela trazendo todas as variáveis globais e objetos que o XOOPS usa para montar o core. Exemplo:






Extra: Desativando o site!

Para bloquear o portal para acesso dos usuários vá em Administração >> Sistema >> Preferências >> Configurações Gerais, ou seja, repita os passos a até f do item 2.1 (explanado neste artigo).

g) Role a página até as linhas abaixo:

Você vai encontrar na linha Desativar site? o "radio button" marcado em "Não", clique no outro, marcando em "SIM"

Nas linhas seguintes você vai poder selecionar os grupos que têm permissão de acessar o site, quando estiver bloqueado (desativado) e vai poder mais abaixo, modificar a mensagem que aparece na página principal, para o usuário que tentar acessar seu portal no momento que o mesmo estiver bloqueado.



h) Role a página até o final e clique em Ok


Marcadores: ,