Solucionar Problemas De Correo Electrónico Del Registro De Errores De SQL Server

Si ve un mensaje de error de dirección de correo electrónico en el registro de errores de SQL Server de su computadora, debe familiarizarse con estas ideas de recuperación.

¿La PC va lenta?

  • 1. Descargue ASR Pro del sitio web
  • 2. Instálalo en tu computadora
  • 3. Ejecute el escaneo para encontrar cualquier malware o virus que pueda estar al acecho en su sistema
  • Mejore la velocidad de su computadora hoy descargando este software: solucionará los problemas de su PC.

    Presentación

    En una publicación de blog anterior, creé T-SQL-Script-Indication-Audit-Files para enviar correos electrónicos con información específica sobre los cambios en cada instancia.
    En este artículo, los miembros de la familia practicarán cómo usar ErrorLog para obtener buenas direcciones de correo electrónico sobre errores críticos o eventos específicos que se consideren en una instancia.

    Es una práctica favorable común para cualquier DBA configurar la alerta del Agente SQL del servidor para errores con una gravedad de 17 a 25. png

    Las advertencias también se respetan a menudo durante errores menos críticos, como “Error de conexión” (gravedad 14).
    Los correos electrónicos enviados por alertas parecen simples:

    Todos los errores se escriben en el archivo de registro de errores de SQL Server.

    Los mensajes de texto para estos mensajes de voz de error, todos los cuales se registran en el registro de errores en particular, se pueden encontrar en sys.messages enjoy.

     seleccione message_id, severity, textpor sys.messagesdonde (gravedad directamente de 18 a 21   o la gravedad es igual a 14)  y por lo tanto is_event_logged = 1  y además por lo tanto language_id = 1033ordenar por gravedad; 

    Las vistas del registro de errores se pueden leer trabajando con el programa registrado sp_reaerrorlog.

    Buscar en el registro de errores de SQL

    sql web error log email

    El propósito de este script T-SQL que estoy escribiendo ahora es asegurarme de que reemplaza las advertencias con un trabajo que se mueve en mi instancia. Emula cada 5 Minutos sin mencionar me envía mensajes basados ​​en ciertos mensajes con respecto a que realmente me identifiqué.

    Si conozco toda la información que hemos visto antes, puedo generar una variable de matriz con el texto que quiero encontrar en el registro de errores, tenga en cuenta estos malentendidos críticos o mensajes informativos.

     DECLARE TABLE @errorlog_definition (error_category varchar (150), error_pattern varchar (1000))Pegar directamente en @errorlog_definitionValores ("Latencia de escritura de la base de datos", "% de solicitudes de E / S tardan más de% segundos en completarse%"), ('Producción retrasada en la base de datos', '% bufs descargados% en% ms% con respecto a db%'), ('Escritura retrasada en la base de datos', '% avg%'), ('Latencia de escritura de la base de datos', '% último destinatario pendiente:% avgWriteLatency%'), ('Error al escribir en la base de datos, disco lleno', 'Puede en lugar de asignarse'), ('Error al conectarse a la base de datos', '% Error al conectar%'), ('Iniciando SQL Server', 'Iniciando SQL Server%') 

    La primera columna representa el tipo específico de evento del que debería ser notificado y también por correo electrónico y se utiliza en los titulares de correo electrónico.

    Bases de datos de registros actuales Los errores se incluyen en las variables de la tabla.

    Inserte

     en @errorlogexec sp_readerrorlog tomado de 0 

    Ahora solo puedo utilizar CROSS APPPY para obtener entradas de registro de errores que a menudo coinciden con mis plantillas de mensajes.

     seleccione e.LogDate, e.ProcessInfo, e.Text, c.error_categoryofrecido por @errorlog AS eEmpleo cruzado (Escoger *ofrecido a través del proceso de @errorlog_definition AS e ddonde .Text, para una ilustración como d.error_pattern) COMO c 

    Básicamente, solo puedo obtener ciertas entradas de registro de errores que necesito. Las publicaciones se dividieron en categorías y decidí no enviar un solo correo electrónico cada vez que se inició el proceso, sino una vez disponible para cada categoría.

    Lo hice mientras tenía cursores. Aquí está el guión completo si finalmente desea probarlo.

    Secuencia de comandos

    – frecuencia de enfoqueDECLARAR @CheckPeriodInMinute entero = 5- variablesDECLARAR @coldate datetime : @object varchar (1024) – – @HTML_footer varchar (máx.) , @HTML_header varchar (máx.) como @HTML varchar (máx.), @HTML_part varchar (máx.)DECLARAR TABLA @errorlog (Registro de fecha / hora Fecha, ProcessInfo varchar (32), Variable de texto (máx.))DECLARE @ table notifiable_errors (LogDate varchar (19), ProcessInfo varchar (32), Textvarchar (1024), error_category varchar (150))ELIGE @ HTML_header = ‘

    ‘set @ HTML_footer = ‘

    ¿La PC va lenta?

    ¡ASR Pro es la solución definitiva para sus necesidades de reparación de PC! No solo diagnostica y repara de forma rápida y segura varios problemas de Windows, sino que también aumenta el rendimiento del sistema, optimiza la memoria, mejora la seguridad y ajusta su PC para obtener la máxima confiabilidad. Entonces, ¿por qué esperar? ¡Empieza hoy mismo!


    Hecho en’ + convert (varchar, getdate (), 120) + ‘desde el servidor “‘ + isnull (convert (varchar (128), @@ SERVERNAME), ”) + ‘”

    ‘—-DECLARAR TABLA @errorlog_definition (error_category varchar (150), error_pattern varchar (1000))Pegar en @errorlog_definitionValores (“Latencia de escritura de la base de datos”, “% de solicitudes de E / S tardan más de% segundos en asegurarse de completar%”), (‘Escritura retrasada en la base de datos’, ‘% bufs descargados% en% ms% para db%’), (‘Escritura retrasada para ayudar a su base de datos’, ‘% avg%’), (‘Retrasa la grabación y para que veas, la base de datos’, ‘% último objetivo incumplido:% avgWriteLatency%’), (‘Artículos de contenido de error en la base de datos, disco lleno’, ‘No se puede volver a asignar%’), (‘Error al conectarse a la base de datos’, ‘% Error al conectar%’), (‘Iniciando SQL Server’, ‘Iniciando SQL Server%’)insertar en @errorlogexec sp_readerrorlog 0- Obtener las entradas del registro de errores que coinciden con la plantilla (por ejemplo)insertar para convertirse en @notifiable_errorsSeleccione e.LogDate, e.ProcessInfo, e.Text, c.error_category.tiempos ofrecidos @errorlog AS eAplicar una cruz (Escoger *ofrecido debido a @errorlog_definition AS e ddonde.Texto como d.error_pattern) COMO cdonde LogDate> DATEADD (MINUTE, [correo electrónico seguro] , GETDATE ())- Cuando las líneas fluyen en el tipo de procesosi @@ ROWCOUNT> 0empezarDECLARAR @logdate @processInfo datetimeDECLARAR varchar (32)DECLARAR @Text varchar (MAX)DECLARAR @error_category varchar (150)DECLARAR CURSOR category_cursor FORseleccione una categoría_error únicaofrecido por @notifiable_errorsOPEN cursor_categoryOBTENGA MÁS DE category_cursor EN @error_categoryDURING @@ FETCH_STATUS es igual a 2EMPEZAR- Bucles 1 categoría de tiempo- Asunto del correo electrónico + encabezado de la tabla HTMLSELECT @object is @ error_category + wi- Last ‘+ convert (varchar (50), @ CheckPeriodInMinute) +’ Mínimo (‘+ convertir (varchar (max), @@ servername) +’) ‘SELECT @ [dirección de correo electrónico protegida] _header + ‘

    [dirección de correo electrónico protegida s Correo electrónico] _category + ‘(last’ + Convertir (varchar (50), @ CheckPeriodInMinute) + ‘min)

    ‘POR FAVOR ELIJA @ [dirección de correo electrónico segura] + ‘

    LogDate Información del proceso Texto

    ‘—– Cursor: obtenga todos los listados de la categoría actual- Crear filas de espacio de trabajo HTML—-DECLARE CURSOR error_cursor FORseleccione LogDate, ProcessInfo, Textofrecido cuando @notifiable_errorsdonde error_category = @error_categoryOPEN cursor_errorOBTENGA MÁS INFORMACIÓN DE error_cursor EN @logdate, @processInfo, @TextHASTA @@ FETCH_STATUS implica 0EMPEZAR- filas de la tabla HTMLseleccione @HTML_part = ‘

    ‘ + isnull (convert (varchar, @ logdate, 120), ”) + ‘ ‘ + isnull (@processInfo, ”) + ‘< y td>

    ‘+ isnull (@Text,’ ‘) +’

    ‘install @ [seguridad del correo electrónico] [seguridad del correo electrónico] _part + ”OBTENGA MÁS DE error_cursor EN @logdate, @processInfo, @Text;FINCERRAR cursor_errorDEALLOCATE error_cursor- Enviar final de tabla HTML + correo electrónicoinstalar – [correo electrónico protegido] + ‘

    [dirección de correo web segura] _footerEXEC msdb.dbo.sp_send_dbmail@profile_name significa “DBA_Profile”, @ Subject = @object, @recipients significa “ [el correo electrónico está básicamente protegido] “, @ body_format = ‘HTML’, @body es igual a @HTMLOBTENGA SIGUIENDO DE category_cursor EN @error_category;FINCERRAR category_cursorDEALLOCATE category_cursorFin

    Cartas de muestra

    Conclusión

    correo electrónico de registro de errores de la computadora sql

    La desventaja de este contacto es que necesito saber exactamente sobre qué tipo de contacto quiero que me notifiquen. Si no estoy usando alertas de agentes, también hay algunos errores críticos a los que no debo prestar atención.
    Lo bueno es que puedo buscar más declaraciones informativas, no solo errores.
    Le prometo que encontró esto interesante y sugirió cómo para que pueda obtener información sobre sus instancias de SQL Server.

    correo electrónico de registro de errores del servidor sql

    Mejore la velocidad de su computadora hoy descargando este software: solucionará los problemas de su PC.

    Troubleshoot SQL Server Error Log Email
    Rozwiązywanie Problemów Z Pocztą E-mail Dziennika Błędów Programu SQL Server
    Problemen Met E-mail Met SQL Server-foutlogboek Oplossen
    Solução De Problemas De E-mail De Log De Erros Do SQL Server
    SQL Server 오류 로그 이메일 문제 해결
    Fehlerbehebung Bei Der E-Mail Mit Dem SQL Server-Fehlerprotokoll
    Felsöka E -postmeddelanden För SQL Server -fellogg
    Risoluzione Dei Problemi Relativi All’e-mail Del Registro Degli Errori Di SQL Server
    Résoudre Les Problèmes Liés à L’e-mail Du Journal Des Erreurs SQL Server
    Устранение неполадок электронной почты журнала ошибок SQL Server