Skip to main content

4.1 Störung und betroffenen Dienst eingrenzen

Bevor Prozesse, Ports oder Protokolldateien untersucht werden, muss eindeutig feststehen, welche Funktion tatsächlich gestört ist. Eine Meldung wie „Der Server funktioniert nicht“ reicht für eine gezielte Fehleranalyse nicht aus.

Grundsatz:
Zuerst das Fehlerbild und den Störungsumfang bestimmen. Erst danach mit technischen Prüfungen beginnen.


Ziele dieser Seite

Nach dieser Seite sollst du:

  • eine ungenaue Störungsmeldung in ein überprüfbares Fehlerbild überführen können,
  • den betroffenen Server und Dienst identifizieren können,
  • den Störungsumfang systematisch eingrenzen können,
  • zwischen Client-, Benutzer-, Netzwerk-, Dienst- und Anwendungsfehlern unterscheiden können,
  • relevante Zeitangaben und Änderungen erfassen können,
  • einen geeigneten Vergleichstest auswählen können,
  • den Ausgangszustand vor Änderungen dokumentieren können.

1. Ruhig und hypothesenoffen beginnen

Bei einer Störung entsteht schnell der Wunsch, sofort einen Dienst neu zu starten oder eine bekannte Lösung auszuprobieren. Dadurch können jedoch wichtige Diagnoseinformationen verloren gehen.

Eine sinnvolle Haltung lautet:

  1. Störungsmeldung nicht ungeprüft als Ursache übernehmen.
  2. Beobachtungen von Vermutungen trennen.
  3. Noch keine technische Ursache festlegen.
  4. Zuerst den Umfang der Störung bestimmen.
  5. Mit einfachen und möglichst lesenden Prüfungen beginnen.
  6. Pro Arbeitsschritt nur eine wesentliche Veränderung durchführen.
  7. Vor und nach jeder Maßnahme vergleichen.
  8. Ergebnisse und Zeitpunkte dokumentieren.
AussageEinordnung
„Das Intranet ist nicht erreichbar.“Beobachtung beziehungsweise Fehlerbild
„Der Webserver ist abgestürzt.“Noch unbestätigte Hypothese
„TCP-Port 443 antwortet nicht.“Technisches Prüfergebnis
„Der Webdienst befindet sich im Zustand Stopped.“Technisches Prüfergebnis
„Der Dienst wurde durch fehlenden Speicher beendet.“Mögliche Ursache, die durch Protokolle belegt werden muss

Wichtig: Eine Fehlermeldung beschreibt häufig nur die Stelle, an der ein Fehler sichtbar wird – nicht die eigentliche Ursache.


2. Aus einer Störungsmeldung ein konkretes Fehlerbild erstellen

Eine gute Fehlerbeschreibung beantwortet mindestens folgende Fragen:

FrageBeispiel
Was funktioniert nicht?Anmeldung an der internen Webanwendung
Welche konkrete Aktion schlägt fehl?Absenden des Anmeldeformulars
Welche Fehlermeldung erscheint?HTTP-Statuscode 503
Seit wann besteht das Problem?Seit 31.07.2026 um 09:15 Uhr
Tritt der Fehler dauerhaft oder zeitweise auf?Bei jedem Anmeldeversuch
Wer ist betroffen?Alle Benutzer am Standort Berlin
Welche Clients sind betroffen?Windows-, Linux- und macOS-Clients
Welche Funktion arbeitet weiterhin?Startseite der Anwendung ist erreichbar
Wurde eine alternative Verbindung getestet?Zugriff über einen zweiten Client ebenfalls fehlerhaft
Was wurde zuletzt verändert?Aktualisierung der Anwendung am Vorabend

Unzureichende Beschreibung:

„Der Server geht nicht.“

Verwertbare Beschreibung:

„Seit 09:15 Uhr erhalten alle geprüften Benutzer beim Anmelden an https://intranet.example.local den HTTP-Statuscode 503. Die Namensauflösung funktioniert und die Startseite ist erreichbar. Der Fehler tritt von mehreren Clients und Benutzerkonten aus auf.“


3. Störungsumfang mit einer Eingrenzungsmatrix bestimmen
PrüfdimensionMögliche Eingrenzung
BenutzerEin Benutzer, Benutzergruppe oder alle Benutzer
EndgerätEin Client, Gerätetyp oder alle Clients
BetriebssystemNur Windows, Linux, macOS oder alle Systeme
StandortEin Raum, Gebäude, Standort oder alle Standorte
NetzwerkLAN, WLAN, VPN, Gastnetz oder alle Zugangswege
AnwendungEine Funktion, ein Modul oder vollständige Anwendung
DienstEin Dienst, mehrere Dienste oder gesamter Server
ZeitpunktDauerhaft, sporadisch, zu bestimmten Uhrzeiten
DatenEinzelne Datei, Datensatz, Freigabe oder alle Daten
BerechtigungEinzelnes Konto, Rolle, Gruppe oder alle Konten
ProtokollHTTP, HTTPS, SMB, SSH, RDP oder Datenbankverbindung
BackendDatenbank, Verzeichnisdienst, Speicher oder externe API

Beispiele für Schlussfolgerungen:

BeobachtungWahrscheinlicher Untersuchungsbereich
Nur ein Benutzer ist betroffenKonto, Profil, Berechtigung oder benutzerspezifische Daten
Nur ein Client ist betroffenClientkonfiguration, Cache, Zertifikat oder lokale Firewall
Alle Benutzer eines Standortes sind betroffenStandortnetz, WAN, DNS, Routing oder Firewall
Alle Benutzer sind betroffenZentraler Dienst, Server, Backend oder globale Änderung
Nur ein Anwendungsmodul ist betroffenModulkonfiguration, Backend oder Berechtigung
Zugriff per IP-Adresse funktioniert, per Name nichtDNS oder Namenskonfiguration
TCP-Port ist offen, Anwendung antwortet fehlerhaftAnwendung, Backend, TLS oder Berechtigung
Fehler tritt nur unter hoher Last aufRessourcen, Grenzwerte, Verbindungspool oder Zeitüberschreitung

Diese Zuordnungen sind Arbeitshypothesen und noch kein endgültiger Ursachenbeweis.


4. Betroffenen Server und Dienst eindeutig identifizieren

Vor der technischen Prüfung müssen folgende Angaben geklärt werden:

InformationBeispiel
Angezeigter DienstnameInterne Webanwendung
Technischer Dienstnameintranet-api
Prozessnameintranet-api.exe beziehungsweise intranet-api
Servernamesrv-app01.example.local
IP-Adresse192.0.2.20
ProtokollHTTPS
ZielportTCP 443
Pfad oder URLhttps://intranet.example.local/login
Backendsrv-db01.example.local
Verantwortliches SystemWebserver, Anwendungsdienst oder Datenbank
ProduktivstatusProduktiv-, Test- oder Entwicklungssystem

Der sichtbare Name einer Anwendung, der Betriebssystem-Dienstname und der Prozessname können unterschiedlich sein.

Beispiel einer Dienstkette:

Client
  → DNS
  → Firewall oder Loadbalancer
  → Webserver
  → Anwendungsdienst
  → Datenbank
  → Verzeichnisdienst oder externe API

Die Störung kann an jeder Übergabestelle dieser Kette entstehen.


5. Basisinformationen des untersuchten Servers erfassen

Die folgenden Befehle verändern den Systemzustand normalerweise nicht.

AufgabeWindows PowerShellLinuxmacOS
Rechnername[RO] hostname[RO] hostname[RO] hostname
Vollständiger DNS-Name[RO] [System.Net.Dns]::GetHostEntry($env:COMPUTERNAME).HostName[RO] hostname --fqdn[RO] hostname -f
Betriebssysteminformationen[RO] Get-ComputerInfo | Select-Object WindowsProductName,WindowsVersion,OsBuildNumber[RO][FILE] cat /etc/os-release[RO] sw_vers
Systemarchitektur[RO] $env:PROCESSOR_ARCHITECTURE[RO] uname -m[RO] uname -m
Kernel beziehungsweise Systemversion[RO] systeminfo[RO] uname -a[RO] uname -a
Letzter Systemstart[RO] (Get-CimInstance Win32_OperatingSystem).LastBootUpTime[RO] uptime -s[RO] sysctl -n kern.boottime
Aktuelle Laufzeit[RO] (Get-Date) - (Get-CimInstance Win32_OperatingSystem).LastBootUpTime[RO] uptime[RO] uptime
Aktuelle Uhrzeit[RO] Get-Date -Format o[RO] date --iso-8601=seconds[RO] date "+%Y-%m-%dT%H:%M:%S%z"
Zeitzone[RO] Get-TimeZone[RO] timedatectl status[RO][PRIV] sudo systemsetup -gettimezone
Angemeldete Benutzer[RO] quser[RO] who[RO] who

Hinweise:

  • hostname --fqdn liefert nur dann ein sinnvolles Ergebnis, wenn Hostname und Namensauflösung korrekt konfiguriert sind.
  • hostname -f kann unter macOS abhängig von der lokalen Namenskonfiguration fehlschlagen oder einen unerwarteten Namen liefern.
  • systeminfo erzeugt eine umfangreiche Ausgabe. Für eine Dokumentation können relevante Zeilen gezielt ausgewählt werden.
  • Zeitstempel müssen zusammen mit der Zeitzone dokumentiert werden, damit Client-, Server- und Netzwerkprotokolle richtig verglichen werden können.

6. Dienstnamen und Prozesse zunächst nur lesend suchen

Die Platzhalter <SUCHBEGRIFF>, <DIENST> und <PROZESS> müssen ersetzt werden.

AufgabeWindows PowerShellLinuxmacOS
Dienst nach Namen suchen[RO] Get-Service -Name "*<SUCHBEGRIFF>*" -ErrorAction SilentlyContinue[RO] systemctl list-unit-files --type=service | grep -i -- "<SUCHBEGRIFF>"[RO] launchctl list | grep -i -- "<SUCHBEGRIFF>"
Dienst nach Anzeigenamen suchen[RO] Get-Service -DisplayName "*<SUCHBEGRIFF>*" -ErrorAction SilentlyContinueNicht getrennt vorhandenNicht getrennt vorhanden
Status eines Dienstes[RO] Get-Service -Name "<DIENST>"[RO] systemctl status "<DIENST>" --no-pager[RO] launchctl print "system/<DIENST>"
Prozess nach Namen suchen[RO] Get-Process -Name "<PROZESS>" -ErrorAction SilentlyContinue[RO] pgrep -a "<PROZESS>"[RO] pgrep -alf "<PROZESS>"
Prozesse ausführlich anzeigen[RO] Get-CimInstance Win32_Process | Select-Object ProcessId,ParentProcessId,Name,CommandLine[RO] ps -eo user,pid,ppid,lstart,stat,cmd[RO] ps -axo user,pid,ppid,lstart,state,command

Besonderheiten:

  • Windows unterscheidet zwischen internem Dienstnamen und sichtbarem Anzeigenamen.
  • Bei systemd gehört die Endung .service zum vollständigen Unit-Namen, kann bei eindeutigen Namen aber häufig weggelassen werden.
  • launchctl list zeigt nicht automatisch alle Konfigurationsdetails eines Dienstes.
  • launchctl print system/<DIENST> erwartet das tatsächliche launchd-Label.
  • Ein laufender Prozess beweist noch nicht, dass der Dienst auf dem erwarteten Port lauscht oder fachlich korrekt arbeitet.

Auf dieser frühen Diagnosestufe sollte ein Dienst noch nicht neu gestartet werden. Zuerst müssen Status, Prozess, Port und relevante Protokolle erfasst werden.


7. Geeignete Vergleichstests durchführen

Ein Vergleichstest verändert jeweils nur eine Prüfdimension. Dadurch lässt sich erkennen, welche Eigenschaft mit dem Fehler zusammenhängt.

AusgangssituationSinnvoller Vergleich
Ein Benutzer meldet einen FehlerAnderes Benutzerkonto am gleichen Client
Ein Client ist betroffenGleicher Benutzer an einem anderen Client
WLAN-Zugriff scheitertGleicher Client über LAN oder VPN
Zugriff per Servername scheitertDNS-Ergebnis prüfen und mit dokumentierter Zieladresse vergleichen
Eine URL funktioniert nichtAndere Funktion desselben Dienstes testen
Ein Standort ist betroffenZugriff von einem anderen Standort testen
Zugriff über Loadbalancer scheitertBackend nur über den vorgesehenen administrativen Testweg prüfen
Anwendung meldet einen FehlerPorttest und protokollspezifischen Funktionstest getrennt durchführen
Produktivsystem ist betroffenVerhalten im freigegebenen Testsystem vergleichen
Fehler tritt zeitabhängig aufErgebnisse mit Last, Sicherung oder geplanten Aufgaben vergleichen

Regel für einen aussagekräftigen Vergleich:

Gleicher Benutzer + anderer Client
oder
anderer Benutzer + gleicher Client
oder
gleicher Client + anderer Netzwerkweg

Werden mehrere Eigenschaften gleichzeitig verändert, ist das Ergebnis häufig nicht eindeutig.

Der direkte Zugriff auf ein Backend kann Sicherheitsregeln, Authentifizierung, TLS-Prüfungen oder den Loadbalancer umgehen. Er darf nur über einen freigegebenen administrativen Testweg erfolgen.


8. Ersten Client-zu-Dienst-Test dokumentieren

Bevor auf dem Server weitergesucht wird, sollte der Fehler möglichst reproduziert und genau protokolliert werden.

PrüfpunkteZu dokumentierende Information
AusgangsgerätHostname, Betriebssystem und Netzwerkverbindung
BenutzerkontextBetroffenes Konto oder Rolle, ohne Kennwort
ZielServername, URL, Freigabe oder Anwendung
ZeitpunktDatum, Uhrzeit und Zeitzone
AktionExakter Arbeitsschritt, der den Fehler auslöst
ErgebnisVollständige Fehlermeldung oder Statuscode
DauerSofortiger Fehler oder Zeitüberschreitung
WiederholbarkeitImmer, sporadisch oder nur einmal
VergleichstestZweiter Client, Benutzer oder Netzwerkweg
BeweismittelScreenshot, Ereignis-ID, Logauszug oder Befehlsausgabe

Beispiel:

Zeitpunkt:       2026-07-31T09:15:42+02:00
Client:          client-017
Betriebssystem:  Windows 11
Benutzerrolle:   Standardbenutzer
Ziel:            https://intranet.example.local/login
Aktion:          Anmeldeformular abgesendet
Ergebnis:        HTTP 503
Dauer:           Antwort nach ungefähr 2 Sekunden
Wiederholbar:    Ja
Vergleich:       Gleicher Fehler auf einem zweiten Client

Sensible Inhalte wie Kennwörter, Sitzungscookies, Zugriffstoken, private Schlüssel oder vollständige personenbezogene Daten dürfen nicht in die Dokumentation übernommen werden.


9. Letzte Änderungen und zeitliche Zusammenhänge erfassen

Viele Dienstfehler entstehen nach einer technischen oder organisatorischen Änderung. Ein zeitlicher Zusammenhang ist jedoch noch kein Beweis für die Ursache.

Zu prüfen sind insbesondere:

  • Betriebssystem- und Anwendungsupdates,
  • Änderungen an Konfigurationsdateien,
  • Zertifikatswechsel,
  • Kennwortänderungen von Dienstkonten,
  • Änderungen an Gruppen oder Berechtigungen,
  • Firewall- und Proxyänderungen,
  • DNS- oder Loadbalanceränderungen,
  • Datenbankmigrationen,
  • Speicher- und Volumeänderungen,
  • Container- oder Image-Updates,
  • Neustarts und Stromausfälle,
  • Sicherungs- und Wartungsaufgaben,
  • Änderungen an externen APIs,
  • abgelaufene Lizenzen oder Zertifikate,
  • neu eingerichtete Überwachungs- oder Sicherheitssoftware.
FrageZweck
Was wurde geändert?Technische Änderung bestimmen
Wann wurde es geändert?Zeitliche Übereinstimmung prüfen
Auf welchem System?Betroffene Komponente bestimmen
Wer oder welcher Prozess führte die Änderung aus?Rückfragen und Audit ermöglichen
Wurde die Änderung getestet?Fehlende Prüfungen erkennen
Gibt es einen Rückfallplan?Wiederherstellung bewerten
Besteht der Fehler auch ohne diese Änderung?Kausalität weiter untersuchen

Die Aussage „Seit dem Update besteht der Fehler“ ist eine wichtige Spur. Erst ein reproduzierbarer Zusammenhang oder ein passender Protokolleintrag macht daraus einen belastbaren Ursachenhinweis.


10. Wann die Eingrenzung abgeschlossen ist

Die erste Eingrenzung ist ausreichend, wenn folgende Punkte beantwortet sind:

  • Welche konkrete Funktion ist gestört?
  • Welcher Server oder Dienst stellt diese Funktion bereit?
  • Welche Benutzer, Geräte und Standorte sind betroffen?
  • Welche Bereiche sind ausdrücklich nicht betroffen?
  • Seit wann besteht die Störung?
  • Ist der Fehler reproduzierbar?
  • Welche Fehlermeldung oder welcher Statuscode erscheint?
  • Welche Vergleichstests wurden durchgeführt?
  • Welche Änderungen gingen der Störung voraus?
  • Welche technische Ebene wird als Nächstes geprüft?
  • Wurde der Ausgangszustand dokumentiert?

Beispiel einer abgeschlossenen Eingrenzung:

Alle geprüften Benutzer können die Startseite des Intranets über HTTPS aufrufen. Beim Absenden des Anmeldeformulars antwortet die Anwendung jedoch mit HTTP 503. Der Fehler tritt von Windows-, Linux- und macOS-Clients sowie an zwei Standorten auf. DNS-Auflösung und Netzwerkzugriff funktionieren. Als Nächstes werden deshalb Dienststatus, Prozess und Backend-Abhängigkeiten auf dem Anwendungsserver geprüft.


11. Typische Fehler bei der ersten Eingrenzung
FehlerFolgeBessere Vorgehensweise
Sofortiger NeustartFlüchtige Diagnoseinformationen gehen verlorenZustand und Protokolle zuerst sichern
Fehlermeldung als Ursache behandelnUntersuchung beginnt an der falschen StelleBeobachtung und Ursache trennen
Nur einen Benutzer befragenStörungsumfang bleibt unbekanntVergleich mit weiteren Benutzern durchführen
Nur ping verwendenDienstfunktion bleibt ungeprüftPort- und Anwendungstest ergänzen
Mehrere Änderungen gleichzeitigWirkung einzelner Maßnahmen bleibt unklarÄnderungen einzeln durchführen
Servername nicht verifizierenFalsches System wird untersuchtZiel, IP-Adresse und Umgebung abgleichen
Test- und Produktivsystem verwechselnFalsche Ergebnisse oder BetriebsrisikoUmgebung eindeutig dokumentieren
Keine Zeitstempel erfassenProtokolle lassen sich schlecht zuordnenDatum, Uhrzeit und Zeitzone notieren
Nur Erfolg oder Fehler notierenDiagnose ist nicht nachvollziehbarBefehl, Ausgabe und Kontext dokumentieren
Geheimnisse in Tickets kopierenSicherheitsrisikoKennwörter, Token und Cookies entfernen

12. Kompakte Checkliste für den Einsatz
[ ] Konkrete gestörte Funktion erfasst
[ ] Vollständige Fehlermeldung erfasst
[ ] Datum, Uhrzeit und Zeitzone notiert
[ ] Betroffene Benutzer bestimmt
[ ] Betroffene Clients und Betriebssysteme bestimmt
[ ] Betroffene Standorte und Netzwerkwege bestimmt
[ ] Funktionierende Bereiche dokumentiert
[ ] Fehler reproduziert
[ ] Vergleichstest durchgeführt
[ ] Servername und Umgebung verifiziert
[ ] Dienstname, Prozess, Protokoll und Port zugeordnet
[ ] Abhängige Systeme aufgenommen
[ ] Letzte Änderungen erfragt
[ ] Ausgangszustand vor Änderungen dokumentiert
[ ] Keine Kennwörter, Token oder vertraulichen Daten gespeichert
[ ] Nächster technischer Prüfschritt festgelegt

Ergebnis dieser Diagnosestufe

Am Ende dieser Seite steht noch nicht zwingend die Ursache fest. Es muss jedoch klar sein:

Was ist gestört?
Wer oder was ist betroffen?
Seit wann besteht die Störung?
Welcher Dienst stellt die Funktion bereit?
Auf welchem System läuft er?
Wie lässt sich der Fehler reproduzieren?
Welche technische Ebene wird als Nächstes geprüft?

Die nächste Diagnosestufe ist die Überprüfung von Dienststatus und Startart.


Weiterführende Quellen