k-ist-k
Goto Top

Exchange Server 2016 Logs - Transaktionslog (Best Practice)

Hallo Werte ITler,

Der Exchange Server protokolliert ja jegliche Änderung und erfolgt über denn Datenbankcache im RAM.
Damit bei einem Stromausfall etc. der Cache nicht weg wäre und Datenverlust entsteht,
gibt es die Transaktionsdateien mit den Änderungen etc.

Die Transaktionsdateien werden laufend in die Datenbank geschrieben ?
Oder nur zu einen speziellen Zeitpunkt ? (zB Neustart vom Exchange)

Transaktionsprotokolle heißen: E*.LOG und sind 5 Megabyte groß (1Mbyte bei Exchange 2007)
Transaktionsprotokolle liegen per Standard:
C:\Program Files\Microsoft\Exchange Server\V15\Mailbox\{Datenbankname}
oder an dem eingestellten Pfad (beim erstellen der Datenbank, kann man den Pfad angeben)

Wird ein Backup erstellt vom Exchange (zB durch Veeam Backup Free Agent)
werden die Transaktionsprotokolle gelöscht


An folgenden Pfaden gibt es Logs, die man per Skript löschen kann (zB vom Frankys Web)
C:\Program Files\Microsoft\Exchange Server\V15\Logging
C:\inetpub\logs

Löscht Ihr alle die per Skript zB jede Woche ?
Kopiert Ihr die Logs weg und wenn ja welche

Was stehen da für Informationen drin und darf man die löschen.
Oder stehen da wichtige Informationen drin, die man eigentlich nicht löschen sollte.


Bitte korrigiert meinen Text, falls ich etwas falsches geschrieben habe.
Habe versucht mich da einzulesen und hoffe ich habe es richtig verstanden


Lg K

Content-ID: 496752

Url: https://administrator.de/contentid/496752

Ausgedruckt am: 22.11.2024 um 10:11 Uhr

spec1re
spec1re 20.09.2019 um 13:35:47 Uhr
Goto Top
Hallo K,

wie sicherst du den deinen Exchange? In der Regel kümmert sich die Backup Software um die Logs, ich würde auf keinen Fall die Logs manuell löschen, besonders die Transaktionsprotokolle nicht.

z.B.:

https://helpcenter.veeam.com/docs/backup/vsphere/transaction_truncation. ...

https://www.frankysweb.de/exchange-2016-ein-paar-worte-zum-backup/

Gruß Spec.
Hubert.N
Hubert.N 20.09.2019 um 15:15:40 Uhr
Goto Top
Moin face-smile

Zitat von @K-ist-K:
Der Exchange Server protokolliert ja jegliche Änderung und erfolgt über denn Datenbankcache im RAM.
Damit bei einem Stromausfall etc. der Cache nicht weg wäre und Datenverlust entsteht, gibt es die Transaktionsdateien mit den Änderungen etc.

Wenn es einen unkontrollierten Ausfall des Systems gibt, kann es immer zu einem Datenverlust kommen. Aber grundsätzlich stimmt es natürlich schon: Änderungen werden im Cache und die Logfiles geschrieben und in einem einem fortlaufenden Prozess in die Datenbank übernommen. Den genauen Stand, wo sich dieser Prozess gerade befindet, speichert das System kontinuierlich in der Datei edb.chk.
In erster Linie sind diese Logfiles dazu gedacht, bei einer korrupten Datenbank nach einem Restore einen kontrollierten Roll-Forward durchführen zu können. Deshalb werden sie auch nach einer erfolgreichen Vollsicherung der Datenbank automatisch bereinigt.
Daneben wird aber auch nach einem unkontrollierten Runterfahren des Systems über diesen Mechanismus erreicht, dass alle Transaktionsprotokolle beim Starten der Datenbank verarbeitet werden und die Datenbank in einem konsistenten Zustand ist.

Die Transaktionsdateien werden laufend in die Datenbank geschrieben ?
(...)
Wird ein Backup erstellt vom Exchange (zB durch Veeam Backup Free Agent)
werden die Transaktionsprotokolle gelöscht
s.o.

An folgenden Pfaden gibt es Logs, die man per Skript löschen kann (zB vom Frankys Web)
C:\Program Files\Microsoft\Exchange Server\V15\Logging
C:\inetpub\logs

Löscht Ihr alle die per Skript zB jede Woche ?

Eine pauschale Aussage zu treffen, ist nun auch nicht so einfach. Und es ist m.E. auch ein wenig die Frage, was da wieviel Speicherplatz benötigt.
Aber grundsätzlich mache ich das schon, denn sonst hat man irgendwann zig Gigabyte an alten Logfiles. UNd wen interssiert nun ein SMTP-Log von vor drei Jahren???
Und sollte ich doch aus irgendeinem Grund ein uraltes Logfile benötigen, habe ich ja auch noch ein Backup.

btw. schreibt das System unter C:\Program Files\Microsoft\Exchange Server\Vxx\TransportRoles\Logs weitere Logfiles. z.B.die SMTP-Logs liegen hier.


Gruß
beidermachtvongreyscull
beidermachtvongreyscull 21.09.2019 um 09:53:27 Uhr
Goto Top
Zitat von @K-ist-K:

Die Transaktionsdateien werden laufend in die Datenbank geschrieben ?
Oder nur zu einen speziellen Zeitpunkt ? (zB Neustart vom Exchange)

Nur beim Beenden des Exchange und Aushängen der DBs oder beim Backupevent (mit dem richtigen Programm).

Zitat von @K-ist-K:
An folgenden Pfaden gibt es Logs, die man per Skript löschen kann (zB vom Frankys Web)
C:\Program Files\Microsoft\Exchange Server\V15\Logging
C:\inetpub\logs
Löscht Ihr alle die per Skript zB jede Woche ?

Diagnose- und Historylogs lösche ich regelmäßig per Script. Sonst müllt sich mein Exchange voll und stellt den Dienst ein.

Es gibt auch (für Experten!) Möglichkeiten, die Transaction-Logs auf anderem Wege wegzuschreiben, falls mal der Platz knapp wird:
https://www.cloudberrylab.com/resources/blog/exchange-truncate-logs/

Ich rate aber zur Vorsicht.
K-ist-K
K-ist-K 23.09.2019 um 10:14:28 Uhr
Goto Top
Hallo,

danke schon mal für die ganzen Hinweise.
Also wir sichern mit Veeam Agent Free (zurzeit)
Aber wie es scheint sichert die anders und somit werden die Transaktionsprotokolle auch nicht alleine gesäubert.

Aber der Exchange startet jeden Sonntag neu,
und im diesen Zuge, werden ja die Transaktionsprotokolle in die Datenbank geschrieben.

Also diese Logs löscht Ihr auch per Skript:
C:\Program Files\Microsoft\Exchange Server\V15\Logging
C:\inetpub\logs

Da das nur Diagnose- und Historylogs sind und nichts mit der Nachrichtenverfolgung etc. zu tun haben.
Sehe ich das richtig ?


Lg
Hubert.N
Hubert.N 23.09.2019 um 12:49:18 Uhr
Goto Top
Zitat von @beidermachtvongreyscull:
Zitat von @K-ist-K:
Die Transaktionsdateien werden laufend in die Datenbank geschrieben ?
Oder nur zu einen speziellen Zeitpunkt ? (zB Neustart vom Exchange)

Nur beim Beenden des Exchange und Aushängen der DBs oder beim Backupevent (mit dem richtigen Programm).

Das ist nicht korrekt. Die Transaktionslogs werden kontinuierlich in die Datenbank geschrieben. vgl. z.B. https://www.msxfaq.de/exchange/admin/database.htm. Das gilt auch für andere Datenbanksysteme wie z.B. den MSSQL-Server.

Wenn bei einer Sicherung die Logs nicht abgeschnitten werden, liegt das daran, dass die Datenbank nicht über einen Agent korrekt gesichert worden ist. Eine VSS-Kopie o.ä. ist für den Server keine vollständige Sicherung und die Logs werden nicht abgeschnitten


Gruß
beidermachtvongreyscull
beidermachtvongreyscull 23.09.2019 um 17:27:55 Uhr
Goto Top
Zitat von @Hubert.N:

Das ist nicht korrekt. Die Transaktionslogs werden kontinuierlich in die Datenbank geschrieben.

Ja, da hast Du Recht.
Danke für die Korrektur.
K-ist-K
K-ist-K 23.09.2019 um 17:43:51 Uhr
Goto Top
OK, das war mir jetzt eine große Hilfe (danke euch allen)

Ich fasse zusammen für mich:

Transaktionslogs werden kontinuierlich in die Datenbank geschrieben.
Die Transaktionslogs befinden sich dort, wo man es beim Datenbank erstellen, angegeben hat.
Transaktionslogs nicht händisch löschen

An diesen Pfaden
C:\Program Files\Microsoft\Exchange Server\V15\Logging
C:\inetpub\logs

befinden sich nur "Diagnose- und Historylogs" die man per Skript löschen kann.
Diese Logs sind nicht notwendig für denn Betrieb.
Für dich Nachrichtenverfolgung werden diese Logs nicht benötigt ?

Eine letzte Frage, da es mir nicht ganz klar ist.
Transaktionslogs werden kontinuierlich in die Datenbank geschrieben.
Nach dem zurückspielen löschen sich die Dateien selbst ?

Bei mir sehe ich solche Dateien
logs

Es gibt diese Dateien nur von heute, von gestern sind keine .logs da.
Und eine Vollsicherung vom Exchange 2016 macht bei mir nur Veeam Free Agent täglich in der Nacht.
Kann es sein, das der Veeam Agent Free doch richtig sichert und die Transaktionsprotokolle löscht ?


Lg K
Hubert.N
Hubert.N 24.09.2019 um 09:49:43 Uhr
Goto Top
Guten Morgen face-smile

Zitat von @K-ist-K:
(...) Für dich Nachrichtenverfolgung werden diese Logs nicht benötigt ?

Nein... Wie ich schon oben schrieb liegen diese unter C:\Program Files\Microsoft\Exchange Server\Vxx\TransportRoles\Logs
Auch da kann man allerdings ab und an mal aufräumen.

Eine letzte Frage, da es mir nicht ganz klar ist.
Transaktionslogs werden kontinuierlich in die Datenbank geschrieben.
Nach dem zurückspielen löschen sich die Dateien selbst ?

??? -> Die Logs werden nach einer vollständigen Datenbanksicherung gelöscht. Sonst bleiben sie dort liegen und vermehren sich bis die Festplatte voll ist bzw. bis der Exchange seinen Dienst mangels Speicherplatz einstellt..

Es gibt diese Dateien nur von heute, von gestern sind keine .logs da.
Und eine Vollsicherung vom Exchange 2016 macht bei mir nur Veeam Free Agent täglich in der Nacht.
Kann es sein, das der Veeam Agent Free doch richtig sichert und die Transaktionsprotokolle löscht ?

Ohne es wirklich zu wissen, kann ich es mir nicht vorstellen, dass diese Software in dieser Version in der Lage ist, einen Exchange sauber zu sichern. Wenn die Logs verschwinden, tippe ich eher auf eine eingeschaltete Umlaufprotokollierung. Dann werden sie nicht aufbewahrt, sondern automatisch bereinigt, wenn die Daten in die Datenbank übernommen worden sind. Vgl. https://docs.microsoft.com/de-de/exchange/configure-circular-logging-for ...


Gruß
K-ist-K
K-ist-K 24.09.2019 um 15:41:02 Uhr
Goto Top
Du hast Recht, es ist die Umlaufprotokollierung aktiviert.
Die Umlaufprotokollierung hat eine bestimmte Größe an Log Dateien (Anzahl an Log Dateien)
Wenn die erreicht sind, werden die Daten in die Datenbank geschrieben
und dann beginnt die protokollierung von vorne.

Ist das korrekt ?

Was ich auch gelesen habe ist, das Inkrementelle Sicherungen + Umlaufprotokollierung schlecht ist.
Da es dann passieren kann das die Umlaufprotokollierung schon ein zweites mal durchläuft,
bevor die Inkrementelle Sicherung statt gefunden hat und dann die Sicherung nicht passt ?

Inkrementelle Sicherung + Umlaufprotokollierung schlecht

Auszug Mirosoft Docs

Also ist es am besten, denn Exchange zu sichern mit "Windows Server Backup" (Feature vom Server)
Umlaufprotokollierung deaktivieren
Diagnose und Hilfslogs löschen mit Skripts