Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

razs

script de erros

Recommended Posts

Fiz este script para devolver erros, mas nao esta a funcionar, limitei-me a fazer uma pagina erro.asp e a pola como include em todas as paginas.

O codigo da pagina erro.asp é o seguinte

 

<%
dim objErr
set objErr=Server.GetLastError()

if objErr<>"" then 

response.write("ASPCode=" & objErr.ASPCode)
response.write("<br />")
response.write("ASPDescription=" & objErr.ASPDescription)
response.write("<br />")
response.write("Category=" & objErr.Category)
response.write("<br />")
response.write("Column=" & objErr.Column)
response.write("<br />")
response.write("Description=" & objErr.Description)
response.write("<br />")
response.write("File=" & objErr.File)
response.write("<br />")
response.write("Line=" & objErr.Line)
response.write("<br />")
response.write("Number=" & objErr.Number)
response.write("<br />")
response.write("Source=" & objErr.Source)

dim fs,fname
set fs=Server.CreateObject("Scripting.FileSystemObject")

set fname=fs.CreateTextFile("c:\log\error.txt",true)
fname.WriteLine(ASPCode="&objErr.ASPCode&", ASPDescription="&objErr.ASPDescription&", Category="&objErr.Category&", Column="&objErr.Column&", Description="&objErr.Description&", File="&objErr.File&", Line="&objErr.Line&", Number="&objErr.Number&", Source="&objErr.Source&")


fname.Close
set fname=nothing
set fs=nothing
set objErr=nothing

end if
%>  

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele gera algum numero de erro ?

dá uma verificada no lab. de script , que coloquei um code, tipo um log de erro, vai te ajudar.

e olha este link

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao faz nada, eu estou a ter um erro numa pagina e ele nao faz nada.

 

Procurei por log no lab.scripts mas nao vi la nada :s

 

Mas o meu codigo tem alguma coisa mal?

Ao estar inserido no inicio de todas as paginas como include ele verifica se o

objErr tem alguma coisa e se tiver escreve no ecra e no txt. a logica e o codigo nao me parecem estar mal:s

 

Ves alguma coisa que esteja mal?

A nao ser que tenha de meter o codigo numa sub e chamar essa sub no fim de cada pagina, é isso??

 

O link que mandas-te nao funciona.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

essa página que tem, pode pôr definida no iis na página de erros, substitua a que o iis tem por defeito(500-100) por essa, guarde esse página que tem por exemplo com o nome "erro.asp", depois coloque na raiz do site, e no iis nas página de erro faça como disse atrás, seleccione "url" e ponha "/erro.asp". Isto é muito útil para detectar erros quando se trabalha com ajax.

 

 

Outra coisa que tem que ver é se no seu site não tem o "on error resume next", se tiver só esse comando ele passa os erros e não lhe amostra nada.

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao ele nao tem o on error resume next.

 

ele agora da-me erro, so funcionar se tirar isto

dim fs,fname
set fs=Server.CreateObject("Scripting.FileSystemObject")

set fname=fs.CreateTextFile("c:\log\error.txt",true)
fname.WriteLine(ASPCode="&objErr.ASPCode&", ASPDescription="&objErr.ASPDescription&", Category="&objErr.Category&", Column="&objErr.Column&", Description="&objErr.Description&", File="&objErr.File&", Line="&objErr.Line&", Number="&objErr.Number&", Source="&objErr.Source&")

 

 

da-me o seguinte erro:

Cannot_use_parentheses_when_calling_a_Sub 80

 

mas eu nao estou a chamar nenhuma sub

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha este exemplo

antes, crie uma tabela,coloque o arquivo error.asp em seu servidor. Certifique-se de alterar as informações de seqüência de conexão,Botão direito do mouse sobre o diretório ou site e selecione a opção propriedades. Escolha a guia erros personalizados.Selecione o erro HTTP 500:100 e edite as propriedades

 

<%@ Language=VBScript %>
<%Response.Buffer = True%>
<html>
<head><title>ASP 3.0 Error </title></head>
<% 'adovbs.inc %>
<!-- #include file = ./adovbs.inc -->
<body>
<%
On Error Resume Next

  set objError = Server.getLastError()
  strNumber = objError.AspCode
  strSource = objError.Category
  strPage = objError.File
  strDesc = objError.Description
  strCode = Server.HTMLEncode(objError.Source)
  If strCode = "" then strCode = "No code available"
  strLine = ObjError.Line
  strASPDesc = ObjError.ASPDescription


  strRemoteAddr = Request.ServerVariables("REMOTE_ADDR")
  strRemoteHost = Request.ServerVariables("REMOTE_HOST")
  strLocalAddr = Request.ServerVariables("LOCAL_ADDR")


  set rs = Server.CreateObject("ADODB.Recordset")
  set Conn = Server.CreateObject("ADODB.Connection")


  conn.ConnectionString = "Provider=SQLOLEDB.1;User id=;Password=;Initial Catalog=;Data Source=;"
  conn.open
  rs.Open "tblErrorDemo", conn, adOpenDynamic, adLockOptimistic, adCmdTable

  'Add Record
  rs.AddNew
   'The datetime is set on the backend as a default value.
   rs("er_number") = strNumber
   rs("er_source") = strSource
   rs("er_page") = strPage
   rs("er_desc") = strDesc + ". " + strASPDesc
   rs("er_code") = strCode
   rs("er_line") = strLine
   rs("er_remote_addr") = strRemoteAddr
   rs("er_remote_host") = strRemotehost
   rs("er_local_addr") = strLocalAddr
  rs.Update

  %>
  <table width="50%" align="center" cellspacing="0" cellpadding="0" border="1">
   <tr>
     <td width="200">Error Number:</td><td><%=strNumber%></td></tr>
   <tr>
     <td width="200">Source:</td><td><%=strSource%></td></tr>
   <tr>
     <td width="200">File:</td><td><%=strPage%></td></tr>
   <tr valign="top">
     <td width="200">Description:</td><td><%=strDesc + ". " + strASPDesc%></td></tr>
   <tr>
     <td width="200">Code:</td><td><%=strcode%></td></tr>
   <tr>
     <td width="200">Line:</td><td><%=strLine%></td></tr>
    <tr>
     <td width="200">Remote Address:</td><td><%=strRemoteAddr%></td></tr>
   <tr>
     <td width="200">Remote Host:</td><td><%=strRemoteHost%></td></tr>
   <tr>
     <td width="200">Local Address:</td><td><%=strLocalAddr%></td></tr>
  </table>
  <br>
  <b>Coloquei um link em cada código de erro que dá a equipe de desenvolvimento mais informações e instruções para cada tipo de erro.</b>
  <br>
  <br>
  <table width="100%" align="center" cellspacing="0" cellpadding="0" border="1">
   <tr bgcolor=#ffff00>
     <td align="center">Error Code</td><td align="center">Error Message</td><td align="center">Extended Information</td></tr>
   <tr>
     <td>ASP 0100</td><td>Out of memory</td><td>Unabled to allocate the required memory.</td></tr>
   <tr>
     <td>ASP 0101</td><td>Unexpected error</td><td>The function return exception_name.</td></tr>
   <tr>
     <td>ASP 0102</td><td>Expecting string input</td><td>None</td></tr>
   <tr>
     <td>ASP 0103</td><td>Expecting numeric input</td><td>None</td></tr>
   <tr>
     <td>ASP 0104</td><td>Operation not allowed</td><td>None</td></tr>
   <tr>
     <td>ASP 0105</td><td>Index out of range</td><td>An array index is out of range.</td></tr>
   <tr>
     <td>ASP 0106</td><td>Type Mismatch</td><td>A data type was encountered that cannot be handled.</td></tr>
   <tr>
     <td>ASP 0107</td><td>Stack Overflow</td><td>The quantity of data being processed is above the permitted limit.</td></tr>
   <tr>
     <td>ASP 0115</td><td>Unexpected Error</td><td>A trapple error occured in an external object.  The script cannot continue running.</td></tr>
   <tr>
     <td>ASP 0177</td><td>Server.CreateObject Failed</td><td>Invalid ProgId</td></tr>
   <tr>
     <td>ASP 0190</td><td>Unexpected error</td><td>A trapple error occurred while releasing an external object.</td></tr>
   <tr>
     <td>ASP 0191</td><td>Unexpected error</td><td>A trapple error occurred in the OnStartPage method of an external object.</td></tr>
   <tr>
     <td>ASP 0192</td><td>Unexpected error</td><td>A trapple error occurred in the OnEndPage method of an external object.</td></tr>
   <tr>
     <td>ASP 0193</td><td>OnStartPage Failed</td><td>An error occurred in the OnStartPage method of an external object.</td></tr>
   <tr>
     <td>ASP 0194</td><td>OnEndPage</td><td>An error occurred in the OnEndPage method of an external object.</td></tr>
   <tr>
     <td>ASP 0240</td><td>Script Engine Exception</td><td>A script engine threw exception.</td></tr>
   <tr>
     <td>ASP 0241</td><td>CreateObject Exception</td><td>The CreateObject caused an exception.</td></tr>
   <tr>
     <td>ASP 0242</td><td>Query OnStartPage Interface Exception</td><td>The querying object OnStartPage caused an exception.</td></tr>
  </table>    
</body>
</html>
<%    set rs = nothing
  set conn = nothing
  set objError = nothing
  Response.Write Err.description
  Response.End
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.