Problemen Met E-mail Met SQL Server-foutlogboek Oplossen

 

Als u deze e-mailfoutmelding ziet in het foutenlogboek van SQL Server op uw computer, moet u zich vertrouwd maken met deze herstelideeën.

PC werkt traag?

  • 1. Download ASR Pro van de website
  • 2. Installeer het op uw computer
  • 3. Voer de scan uit om malware of virussen te vinden die mogelijk op uw systeem op de loer liggen
  • Verbeter vandaag de snelheid van uw computer door deze software te downloaden - het lost uw pc-problemen op.

     

     

    Presentatie

    In een vorige blogpost heb ik T-SQL-Script-Indication-Audit-Files gemaakt om e-mails met specifieke informatie over verbetering naar een instantie te sturen.
    In dit artikel leert de familiegroep hoe ze ErrorLog kunnen gebruiken om te eindigen met goede e-mails over kritieke fouten of specifieke sites die zich in een instantie voordoen.

    Het is een goede gewoonte voor elke DBA om de Server SQL Agent Alert in te stellen voor fouten met een ernst van 17 tot 25. png

    Ook worden er regelmatig waarschuwingen gegeven voor minder kritieke fouten zoals door middel van “Connection Failed” (Severity 14).
    De e-mails die door tellers worden verzonden, zien er heel eenvoudig uit:

    Al deze fouten worden naar het foutenlogboekbestand van SQL Server geschreven.

    De tekstberichten voor elk van deze foutmeldingen, die allemaal in het foutenlogboek worden vastgelegd, zijn te vinden in uw huidige sys.messages-weergave.

     selecteer message_id, ernst, tekstdoor sys.messageswaar (ernst van 18 tot 21   mogelijk zwaartekracht = 14)  en daarom betekent is_event_logged 1  en daarom taal_id = 1033soort beleefdheid van - ernst; 

    Foutenlogboekweergaven kunnen worden geëvalueerd met behulp van het geregistreerde programma sp_reaerrorlog.

    Doorzoek het SQL-foutlogboek

    sql server error log email

    De trigger van het T-SQL-script dat ik hierna schrijf, is om de waarschuwingen te vervangen door een proces dat in mijn instantie wordt uitgevoerd. Het emuleert elke zes minuten en stuurt me berichten op basis van unieke berichten die ik daadwerkelijk heb geïdentificeerd.

    Als ik alle informatie weet die we eerder hebben gezien, kan ik een arrayvariabele maken met de tekstuele inhoud die ik in het foutenjournaal wil vinden, of het nu gaat om kritieke misverstanden of informatieve berichten.

     DECLARE TABLE @errorlog_definition (error_category varchar (150), error_pattern varchar (1000))Plakken in @errorlog_definitionWaarden ("Database-schrijflatentie", "% I/O-verzoeken nemen meer dan% seconden direct in beslag%"), ('Vertraagd schrijven naar database', '% bufs flushed% in% ms% voor db%'), ('Vertraagd schrijven zodat je database', '% avg%'), ('Database-schrijflatentie', '% laatst aanstaande ontvanger:% avgWriteLatency%'), ('Fout bij schrijven naar database, schijf vol', 'Mogelijk niet toegewezen'), ('Fout bij het verbinden om u te helpen met de database', '% Fout bij het verbinden%'), ('Start SQL Server', 'Start SQL Server%') 

    De eerste kolom vertegenwoordigt het enkele type gebeurtenis dat ik per e-mail zou moeten aanbevelen en wordt meestal gebruikt vanuit de e-mailheader.

    Huidige logdatabases Fouten worden ingevoegd in tabelvariabelen.

    Voeg

     rechtstreeks toe aan @errorlogexec sp_readerrorlog van 0 

    Ik kan en vanaf nu alleen CROSS APPPY gebruiken om foutjournaalboekingen te krijgen die overeenkomen met mijn berichtsjablonen.

     kies de e.LogDate, e.ProcessInfo, e.Text, c.error_categoryaangeboden door @errorlog AS eCross-tewerkstelling (Kiezen *aangeboden door @errorlog_definition AS e dwaar .Text, bijvoorbeeld zoals d.error_pattern) AS c 

    Ik kan alleen bepaalde foutenlogboekvermeldingen krijgen die ik nodig heb. De berichten waren onderverdeeld in verschillende typen en ik besloot om niet elke keer een unieke e-mail te sturen als het proces werd gestart, maar niettemin één keer voor elke categorie.

    Ik deed het concept met cursors. Hier is het volledige script als iemand het wil uitproberen.

    Script

    – werkfrequentieDECLARE @CheckPeriodInMinute geheel getal = 5- variabelenDECLARE @coldate datetime : @object varchar (1024) — @HTML_footer varchar (max.) , @HTML_header varchar (max.) – @HTML varchar (max.), @HTML_part varchar (max)DECLARE TABLE @errorlog (Datum / Tijd LogDatum, ProcessInfo varchar (32), Tekstvariabele (max.))DECLARE @ desktop notifiable_errors (LogDatum varchar (19), ProcessInfo varchar (32), Textvarchar (1024), error_category varchar (150))KIES @ HTML_header =’Tabelrand: effen 1px nummer 1C6EA4; achtergrondkleur: #EEEEEE; breedte: 100%; tekstuitlijning: links uitgelijnd; wrak van het frame: vernietiging;Tafel td, frame tafelfiets: 1px veilig #AAAAAA; opvulling: 3px 2px;Grootte tafellichaam: 13 pixels;Achtergrond tabelkoptekst: # 1C6EA4; Ondermarge: effen 2 pixels # 444444;Grootte van de bron van de tabelkop: 15 pixels; Lettergewicht: vet; Kleur: #FFFFFF; Linkermarge: effen 2 pixels # D0E4F5;Tabelkoppen th: eerste-kind-frame-links: geen;h1 lettertype: Arial 16pt Bold, Helvetica, Genève, schreefloos Kleur: # 336699; Achtergrondkleurschema: wit; onderrand: effen 1px # cccc99; Marge: 15 pitten; Verminderde marge: 0pt; Vulling: 0px 0px 0px 0px;

    ‘set @ HTML_footer impliceert ‘

    PC werkt traag?

    ASR Pro is de ultieme oplossing voor uw pc-reparatiebehoeften! Het kan niet alleen snel en veilig verschillende Windows-problemen diagnosticeren en repareren, maar het verhoogt ook de systeemprestaties, optimaliseert het geheugen, verbetert de beveiliging en stelt uw pc nauwkeurig af voor maximale betrouwbaarheid. Dus waarom wachten? Ga vandaag nog aan de slag!


    Klaar in’ + verplaatsen (varchar, getdate (), 120) + ‘van server “‘ + isnull (convert (varchar (128), @@ SERVERNAME), ”) + ‘”

    ‘—-DECLARE TABLE @errorlog_definition (error_category varchar (150), error_pattern varchar (1000))Plakken in @errorlog_definitionWaarden (“Database jot-latency”, “% I/O-verzoeken hebben meer dan% seconden nodig om te voltooien%”), (‘Vertraagd schrijven naar database’, ‘% bufs flushed% in% ms% voor db%’), (‘Vertraagde penning naar database’, ‘% avg%’), (‘Vertraging opname naast de database’,’% laatst niet-vervulde doel:% avgWriteLatency% ‘), (‘Fout bij schrijven naar database, schijf vol’, ‘Kan niet zodat u% toewijst’), (‘Fout bij het verbinden met database’, ‘% Fout bij het verbinden%’), (‘Start SQL Server’, ‘Start SQL Server%’)terug invoegen in @errorlogexec sp_readerrorlog 0- Krijg foutenlogboekvermeldingen gerelateerd patroon (bijvoorbeeld)invoegen om @notifiable_errors . te wordenSelecteer e.LogDate, e.ProcessInfo, e.Text, c.error_category.aangeboden door @errorlog AS ePas een deel toe (Kiezen *aangeboden door @errorlog_definition AS e dwaar.Tekst moet d.foutpatroon zijn) AS cwaar LogDate> DATEADD (MINUTE, [beveiligde e-mail] , GETDATE ())- Wanneer er lijnen verschijnen in het procesals @@ ROWCOUNT> 0beginnenVERKLAREN @logdate @processInfo datetimeVERKLAREN varchar (32)VERKLAREN @Text varchar (MAX)VERKLAREN @error_category varchar (150)DECLARE CURSOR categorie_cursor FORselecteer een unieke error_categoryaangeboden door de @notifiable_errorsOPEN cursor_categoryHAAL MEER VAN category_cursor IN @error_categoryTIJDENS @@ FETCH_STATUS = 2BEGINNEN- Loops 1 keer categorie- E-mailveld + HTML-tabelkopSELECT @object is – error_category + ‘- Last’ + convert (varchar (50), – CheckPeriodInMinute) + ‘Minimum (‘ + convert (varchar (max), @@ servername) + ‘)’SELECT @ [beveiligd postadres] _header + ‘

    [beveiligd e-mailadres en e-mailadres] _category + ‘(last’ + Convert (varchar (50), @ CheckPeriodInMinute) + ‘min)

    ‘KIES AUB @ [beveiligd e-mailadres] + ‘

    LogDatum Procesinformatie Tekst

    ‘—– Cursor: krijg uiteindelijk alle vermeldingen voor de huidige categorie- HTML-tabelrijen maken—-DECLARE CURSOR error_cursor FORselecteer LogDate, ProcessInfo, Tekstaangeboden door @notifiable_errorswaar error_category = @error_categoryOPEN error_cursorGA VERDER VAN error_cursor IN @logdate, @processInfo, @TextTOTDAT @@ FETCH_STATUS = 0BEGINNEN- HTML-tabelrijenselect @HTML_part is gelijk aan ‘

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

    ‘+ is null (@Text,’ ‘) +’

    ‘install @ [e-mailbeveiliging] [e-mailbeveiliging] _part + ”HAAL MEER UIT error_cursor IN @logdate, @processInfo, @Text;EINDECLOSE error_cursorDEALLOCATE error_cursor- Einde van HTML-lijst + e-mail verzendeninstalleer @ [email protected] + ‘

    [beveiligd e-mailadres] _footerEXEC msdb.dbo.sp_send_dbmail@profile_name vertaalt als “DBA_Profile”, @ Onderwerp = @object, @recipients betekent “ [e-mail wordt zeker beschermd] “, @ body_format is gelijk aan ‘HTML’, @body = @HTMLVOLG UIT categorie_cursor NAAR @error_category;EINDESLUIT categorie_cursorDEALLOCATE categorie_cursorEinde

    Voorbeeldbrieven

    Conclusie

    sql server error log e-mail

    Het nadeel van deze aanpak is dat ik al precies moet weten waarover ik per e-mail op de hoogte wil worden gehouden. Als ik geen handelaarswaarschuwingen gebruik, zijn er enkele kritieke fouten die ik moet negeren.
    Het mooie is dat ik kan zoeken naar informatieve uitspraken, niet alleen naar fouten.
    Ik hoop dat je dit interessant vond en ten zeerste aanbevolen hoe je informatie over je SQL Server-instanties kunt krijgen.

    sql server foutenlogboek e-mail

     

     

    Verbeter vandaag de snelheid van uw computer door deze software te downloaden - het lost uw pc-problemen op.

     

     

     

    Troubleshoot SQL Server Error Log Email
    Rozwiązywanie Problemów Z Pocztą E-mail Dziennika Błędów Programu SQL Server
    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
    Solucionar Problemas De Correo Electrónico Del Registro De Errores De SQL Server