ASP - Um dedo-duro a seu favor
Oscar Pires é desenvolvedor ASP e Visual Basic, atualmente voltado para o e-commerce, e trabalha com sistemas para controle dos dados de lojas.
17/09/2001 - Coluna nº 02
ASP - Um dedo-duro a seu favor
Neste artigo vamos aprender como o sistema pode encontrar um erro pela página e imediatamente lhe comunicar através do e-mail. Irei usar dois recursos simples para conseguir algo muito útil, ter conhecimento de erros ocorridos no site.
Para facilitar o uso e compreensão, a função que irá processar o erro é um artigo único que deverá ser incluido nas páginas, e quando houver erro, a pagina o chamará automaticamente.
erro.asp -> será o arquivo que pegará os valores referentes ao erro e enviará ao seu e-mail.
teste.asp -> uma página exemplo que estará preparada para reportar o erro caso ocorra algum.
Neste artigo irei fazer uso do objeto ERR (para detectar e descrever o erro) e do CDONTS (componente padrão para envio de email).
Segue a página teste.asp
'aqui faço inclusão do arquivo que irá dedurar o erro caso ocorra
<% On error Resume next %>
'se pegar erro no meio do documento, força a continuar
Dedo Duro
<%
response.write "Teste às " & time
reponse.write "note algo aqui"
'perceba a linha acima "note algo aqui", há um erro proposital pois não existe o objeto REPONSE
'abaixo a instrução que verificará, se o número de erro for maior que zero, então ocorreu algum
If err.number > 0 then
Call ERROS 'erros é a função pra dedar, que está dentro de erro.asp
End if %>
Agora, o arquivo erro.asp
<%
Function erros
DedoDuro = "Erro ocorrido em: " & now
DedoDuro = DedoDuro & "Pagina: " & request.ServerVariables("SCRIPT_NAME")
DedoDuro = DedoDuro & "Número: " & err.number
DedoDuro = DedoDuro & "Descrição: " & err.description
DedoDuro = DedoDuro & "Fonte: " & err.source
'acima cria a mensagem com a descrição do erro ocorrido
Set mail = Server.CreateObject("CDONTS.NewMail")
mail.from = "dedoduro@seusite.com.br"
mail.to = "voce@seusite.com.br"
mail.subject = "Ocorreu um erro"
mail.MailFormat = 0
mail.BodyFormat = 0
mail.body = DedoDuro
mail.send
set mail = nothing
response.write "Ocorreu um erro nesta pagina, e um email foi gerado para notificar o webmaster"
End Function
%>
Pronto! É isso aí!
Rresumindo, o arquivo teste.asp tem um erro provocado e quando chega ao fim do documento, é verificado que ocorreu, e automaticamente chama a função ERROS, que é o arquivo erro.asp, que monta uma descrição do erro ocorrido e envia ao mail.
Caso não ocorra erro na página, a função não será chamada e também não ira interferir em nada.
Semana que vem eu volto com mais novidades. Qualquer dúvida, envie-me um e-mail.
Até mais.
Oscar Pires
blade@imasters.com.br
Todos os direitos autorais dos artigos pertencem ao seu autor.