Warum Logging?
Weil Rueckgabecodes allein nicht erklaeren, welcher Unterprozess scheiterte, welche Parameter liefen und ob ein Neustart ursaechtlich war.
Logging
Diese Seite beschreibt, welche Logs Pflicht sind, wie sie gesammelt werden und wie man den ersten echten Fehler von Folgefehlern trennt.
Weil Rueckgabecodes allein nicht erklaeren, welcher Unterprozess scheiterte, welche Parameter liefen und ob ein Neustart ursaechtlich war.
MSI: /L*v, Inno: /LOG, PSADT: Toolkit-Log, dazu Wrapper-Logs mit Startzeit, Host, Benutzerkontext und Rueckgabecode.
Nicht auf den letzten Fehler springen, sondern den ersten belastbaren Bruchpunkt suchen und Prozessketten sauber korrelieren.
Bei MSI nur nach "Return value 3" zu suchen, ohne die Zeilen direkt davor und den aufrufenden Kontext zu lesen.
Wenn du nicht nur Hersteller- oder Toolkit-Logs lesen willst, sondern saubere eigene Logeintraege fuer Deploymentskripte schreiben moechtest, lohnt sich eine kleine robuste Loggingbasis in PowerShell.
Artikel lesenEigene Logs helfen besonders bei Prechecks, Detection, Wrappern und Nacharbeiten, die im Herstellerlog gar nicht oder nur indirekt sichtbar sind.
Ein eigenes Log wird noch nuetzlicher, wenn das Format sauber strukturiert und fuer Logviewer gut lesbar aufgebaut ist.
Artikel lesenWenn dieselbe Funktion dauerhaft in Deployments und Detection laeuft, solltest du ueber Dateirotation und zusaetzliche LogLevel nachdenken.
Artikel lesenStart-Process msiexec.exe -ArgumentList '/i app.msi /qn /L*v c:\logs\app.log' -Wait
Get-Content 'c:\logs\app.log' -Tail 80