Vom Fehlerbild zur Lösung

Problem eingrenzen, nächsten Schritt ausführen

Gib eine Fehlermeldung, ein Tool oder eine Verbindungsart ein. Statt allgemeiner Erklärungen listet diese Seite Gerätestatus, Logspeicherorte, Prüfkommandos und die für den Support benötigten Angaben in der richtigen Reihenfolge auf.

Erstverbindung

Gerät nicht erreichbar? In fünf Prüfpunkten eingrenzen

Verbindungsprobleme liegen meist in Status, Zugangsdaten, Netzwerk oder Client-Konfiguration. Die Reihenfolge verhindert, dass ein Netzwerkfehler als Gerätefehler beurteilt wird.

01

Gerätestatus bestätigen

Melde dich zunächst in der Konsole an und prüfe, ob die Instanz verfügbar ist. Vergleiche Gerätenamen und Knoten mit der Bestellung. Ist das Gerät verfügbar, schlagen aber beide Verbindungsarten fehl, prüfe das Netzwerk – ändere nicht zuerst die Systemkonfiguration.

  • Bestellnummer, Geräte-ID und Knoten prüfen.
  • Sicherstellen, dass keine Adresse aus einem alten Eintrag verwendet wird.
  • Angezeigten Konsolenstatus und Prüfzeitpunkt notieren.
02

Zugangsdaten prüfen

Unterscheide Systembenutzername, Anfangspasswort und SSH-Schlüssel. Prüfe beim Kopieren Leerzeichen am Anfang und Ende. Bei fehlgeschlagener Schlüssel-Authentifizierung zuerst privaten Schlüssel und Benutzernamen bestätigen, statt fortlaufend Kombinationen zu testen.

  • Groß-/Kleinschreibung des Benutzernamens und Eingabemethode prüfen.
  • Prüfen, ob die Berechtigungen der privaten Schlüsseldatei zu weit gefasst sind.
  • Bei fehlerhaften Zugangsdaten über die Konsole ein Ticket einreichen.
03

Lokales Netzwerk prüfen

Teste über ein anderes vertrauenswürdiges Netzwerk und schließe vorübergehend Unternehmensproxy, VPN, Ausgangsfirewall und Sicherheitssoftware-Regeln aus. Notiere Zieladresse, Port, Zeitpunkt und Timeout-Text.

  • DNS-Auflösung und Zielport getrennt testen.
  • Ergebnisse von Heim- und Unternehmensnetzwerk vergleichen.
  • Nicht nur „Verbindung fehlgeschlagen“ übermitteln.
04

Remote-Desktop prüfen

Prüfe, ob gespeicherte Adresse, Benutzername und Anzeigeeinstellungen zum aktuellen Gerät gehören. Öffnet sich das Bild, reagiert aber verzögert, reduziere zunächst Auflösung und Farbqualität und prüfe dann Netzwerkschwankungen.

  • Alte Verbindungseinträge im Client löschen und neu anlegen.
  • Fehlertext erfassen, aber keine vertraulichen Zugangsdaten übermitteln.
  • Prüfen, ob SSH unabhängig eine Verbindung herstellen kann.
05

SSH-Konfiguration prüfen

Nutze die ausführliche Ausgabe, um festzustellen, ob der Fehler bei Auflösung, Handshake oder Authentifizierung auftritt. Bei erfolgreichem Handshake, aber fehlgeschlagener Authentifizierung, prüfe Benutzername, privaten Schlüssel und Autorisierungsdatei. Bei direktem Timeout zum Netzwerkpfad zurückkehren.

ssh -vvv user@host
chmod 600 ~/.ssh/id_ed25519
ssh-add -l
Sicherheitsgrenze

Übermittle im Supportfall keine Passwörter, privaten Schlüssel, Wiederherstellungscodes, vollständigen Zahlungsdaten oder unbereinigten Zertifikate. Bei Konfigurationsauszügen nur fehlerrelevante Felder beibehalten.

Xcode und Signierung

Versions-, Signierungs- und Archivierungsprobleme getrennt prüfen

Prüfe nicht alle Schritte mit einem vollständigen Release-Job. Zuerst Toolchain-Version bestätigen, dann die Signierung mit einem Testprojekt prüfen und zuletzt die Archiv-Logs des echten Projekts auswerten.

Prüfpunkt Prüfergebnis
XCODE Version und Kommandozeilentools stimmen überein

Prüfe, ob ausgewählte GUI-Version, Kommandozeilenpfad und Projektanforderungen übereinstimmen. Öffne Terminal und Build-Prozess nach einem Versionswechsel neu.

xcode-select -p
CERT Zertifikat ist für den aktuellen Benutzer lesbar

Prüfe, ob benötigtes Zertifikat und privater Schlüssel vollständig importiert und in der aktuellen Sitzung zugänglich sind. Der Zertifikatsname allein bestätigt keinen erfolgreichen Import.

security find-identity -v -p codesigning
PROFILE Provisioning-Profil passt zum Ziel

Anwendungs-ID, Team, Capabilities und Gültigkeitsbereich prüfen. Vor dem Löschen alter Profile eine Liste sichern.

~/Library/MobileDevice/Provisioning Profiles
KEYCHAIN Nichtinteraktiver Job besitzt Zugriffsrechte

Kann die GUI archivieren, CI jedoch nicht, prüfe die vom Runner verwendete Keychain, den Entsperrvorgang und die Zugriffskontrolle.

security list-keychains
ARCHIVE Ersten Fehler als Ursache beibehalten

Ermittle im Archiv-Log den frühesten Fehler statt nur die Zusammenfassung zu kopieren. Notiere Ziel, Konfiguration, SDK und ausgeführtes Kommando.

xcodebuild -showBuildSettings

CI/CD-Fehlerhandbuch

Bei nicht ausgeführten Jobs zuerst Runner, dann Job prüfen

CI-Fehler müssen in Scheduling, Ausführungsumgebung, Ressourcen und Skript zerlegt werden. Wiederholtes Ausführen überschreibt nur Logs und beweist keine Wiederherstellung.

CI/CD-Fehlerbild, Prüf­reihenfolge und Wiederherstellungsprüfung
Fehlerbild Zuerst prüfen Reihenfolge Wiederherstellungskriterium
Runner offline Prozess, Netzwerk, Registrierung, Ausführungsbenutzer Erreichbarkeit bestätigen, dann Servicelog lesen; Registrierungsbereich und Startbenutzer prüfen, nicht zuerst neu registrieren. Runner bleibt online und übernimmt erfolgreich einen minimalen Testjob.
Job bleibt lange in der Warteschlange Labels, Parallelitätslimit, vorhandene Jobs Prüfen, ob Job-Labels zum Runner passen und ob laufende Prozesse oder belegte Slots existieren. Neue Jobs werden in der erwarteten Warteschlange übernommen; Status alter Jobs ist eindeutig.
Cache-Wiederherstellung fehlgeschlagen Cache-Schlüssel, Verzeichnisrechte, freier Speicher Cache-Schlüssel erfolgreicher und fehlgeschlagener Jobs vergleichen; Eigentümer prüfen, dann rekonstruierbaren Cache löschen. Abhängigkeiten werden wiederhergestellt und der nächste Job nutzt dieselben Cache-Regeln.
Skriptberechtigungsfehler Ausführungsbit, Interpreter, Arbeitsverzeichnis Prüfen, ob das Skript im Repository liegt und das Ausführungsbit besitzt; Interpreter in der ersten Zeile und relative Pfade kontrollieren. Skript läuft in einer nichtinteraktiven Sitzung des Runner-Benutzers erfolgreich.
Build-Timeout Letzte aktive Phase, CPU, Arbeitsspeicher, Speicher Letztes gültiges Log suchen und dann Prozessblockade, Ressourcenmangel oder Warten auf Netzwerkabhängigkeit unterscheiden. Gleicher Commit wird fortlaufend abgeschlossen, Dauer liegt nahe der Baseline und keine Prozesse bleiben zurück.
RUNNER BASELINE

Einen minimalen Healthcheck-Job beibehalten

Der Healthcheck prüft nur Arbeitsverzeichnis, Speicher, Toolchain-Pfade und einen kurzen Test. Er darf keine Release-Zugangsdaten enthalten und nicht von großem Cache abhängen.

whoami
pwd
df -h
xcodebuild -version
git --version

Leistung und Speicher

Mit drei Evidenzgruppen die Ursache eines langsamen Jobs bestimmen

Ein einzelner langsamer Job rechtfertigt keine größere Konfiguration. Prüfe Aktivitätsanzeige, Speicherplatz und Build-Log gemeinsam und vergleiche mit der normalen Baseline desselben Projekts.

CPU und Arbeitsspeicher

Beobachte den gesamten Job, nicht nur eine Sekunde. Dauerhaft volle CPU bei fortschreitendem Job bedeutet Rechenlast; steigender Speicherdruck mit starkem Swapping weist auf zu hohe Parallelität oder Projektgröße hin.

Aufzeichnen
Spitzenwert, Dauer, Anzahl paralleler Jobs
Ausschließen
Zurückgebliebene Simulatoren, nicht beendete Compilerprozesse

Festplatte und Cache

Erfasse zuerst den Verbrauch von Projekt, Abhängigkeiten, Simulatoren, Archiven und rekonstruierbarem Cache. Nahe der Speichergrenze können Entpacken, Archivierung und Logschreiben fehlschlagen. Vor dem Löschen Artefakte von rekonstruierbaren Daten unterscheiden.

Prüfen
DerivedData, Archive, Simulatoren, Paket-Cache
Bestätigen
Nach dem Löschen denselben Commit erneut ausführen

Build-Logs und Toolchain

Sind Ressourcen unauffällig, der Job aber in demselben Skript, Abhängigkeitsdownload oder Kompilierungsschritt blockiert, prüfe Versionsänderungen, Netzwerkabhängigkeiten und Wartebedingungen. Erfolgslogs zeigen Abweichungen schneller als die Gesamtdauer.

Vergleichen
Derselbe Commit, dieselbe Toolchain, dasselbe Kommando
Eingrenzen
Erste deutliche Abweichung von der Baseline
A Ressourcen dauerhaft ausgelastet

Parallelität reduzieren und erneut testen; ändert sich die Dauer stabil mit der Parallelität, größere Konfiguration prüfen.

B Festplatte nahe der Kapazitätsgrenze

Rekonstruierbaren Cache und alte Artefakte löschen und eine Bereinigungsregel nach jedem Job einrichten.

C Ressourcen normal, aber Phase blockiert

Skripte, Abhängigkeitsquellen, Toolchain-Version und nichtinteraktive Berechtigungen prüfen.

Knoten und Netzwerk

Vier verfügbare Knoten, einheitliches Netzwerkprotokoll

NUMACS bietet Knoten in Singapur, Japan (Tokio), Korea (Seoul) und Hongkong. Alle Verzeichniskombinationen können bestellt werden; maßgeblich ist der live von der Konsole gemeldete Status.

SGVerfügbar

Singapur

Geeignet für Zugriffe aus Südostasien und angrenzenden Regionen. Notiere bei der Diagnose lokalen Anbieter, Zieladresse, Verbindungsart und Zeitpunkt.

Singapur-Knoten auswählen
JPVerfügbar

Japan (Tokio)

Teste bei Verbindungsproblemen Remote-Desktop und SSH getrennt und vermerke, ob das Problem nur in einem bestimmten lokalen Netzwerk auftritt.

Japan-Knoten auswählen
KRVerfügbar

Korea (Seoul)

Füge bei Netzwerkproblemen Zeitraum von Timeout oder Verbindungsabbruch sowie den Test desselben Geräts über ein anderes Netzwerk bei.

Korea-Knoten auswählen
HKVerfügbar

Hongkong

Ändert sich die interaktive Latenz plötzlich, notiere Zieladresse, Protokoll, Client-Version und den gerade laufenden Job.

Hongkong-Knoten auswählen
Netzwerk-Ticketdaten

Was muss ein überprüfbarer Netzwerkbericht enthalten?

Gib Zeitpunkt und Zeitzone, Knoten, Zieladresse, Protokoll, lokalen Netzwerktyp, vollständigen Fehlertext und das Ergebnis nach einem Netzwerkwechsel an. Übermittle Diagnoseausgaben bereinigt und nicht nur einzelne Zahlen aus einem Screenshot.

  • Zeit:Minutengenau und mit Zeitzone
  • Pfad:Lokales Netzwerk, Zieladresse und Port
  • Ergebnis:Timeout, Ablehnung, Authentifizierungsfehler oder Verbindungsabbruch
  • Vergleich:Ergebnis über ein anderes Netzwerk oder eine andere Verbindungsart

Abrechnung und Zeiträume

Erst Bestellzeitraum, dann Zahlungsbeleg prüfen

Geräte sind tage-, wochen-, monats- oder quartalsweise mietbar. Der Bestellbetrag wird einheitlich in US-Dollar (USD) abgerechnet; Zeitraum und Konfiguration ergeben sich aus der Bestellung.

DAY

Täglich

Geeignet für kurzfristige Tests, temporäre Builds oder Migrationen. Bei Abrechnungsfragen Bestellbeginn und Geräte-ID angeben.

WEEK

Wöchentlich

Geeignet für einen zusammenhängenden Sprint oder eine Versionsabnahme. Kalenderwoche und tatsächlichen Bestellzeitraum nicht verwechseln.

MONTH

Monatlich

Geeignet für stabile Entwicklung und CI-Workflows. Vor einer Konfigurationsänderung erforderliche Daten exportieren und Migration abstimmen.

QUARTER

Vierteljährlich

Geeignet für laufende Projekte und feste Runner. Das Team sollte Schlüsselrotation, Backups und Jobübergaben frühzeitig dokumentieren.

Vor dem Absenden prüfen

Damit die Fehlersuche nicht von vorn beginnt

Diese Angaben ermöglichen dem Support, direkt mit Reproduktion und Eingrenzung zu beginnen, statt zunächst Basisinformationen nachzufordern.

Remote-Desktop und SSH schlagen beide fehl – was sollte ich zuerst einreichen?

Zuerst Gerätestatus in der Konsole bestätigen und dann Bestellnummer, Knoten, Zeitpunkt und Zeitzone, Zieladresse, vollständige Fehlertexte beider Verbindungsarten sowie den Test nach einem Netzwerkwechsel einreichen. Keine Passwörter oder privaten Schlüssel übermitteln.

Soll ich die Toolchain nach einem fehlgeschlagenen Xcode-Build sofort neu installieren?

Nein. Sichere zuerst den ersten Ursachfehler, Xcode-Version, Kommandozeilenpfad, Projektkonfiguration und letzte Änderungen. Eine Neuinstallation verändert den Zustand und kann relevante Versionsunterschiede und Logs entfernen.

Ist eine erneute Registrierung bei einem Offline-Runner der schnellste Weg?

Prüfe zuerst Geräteverbindung, Runner-Prozess, Ausführungsbenutzer und Servicelogs. Nur bei beschädigten oder ungültigen Registrierungsdaten neu registrieren. Sonst erschweren alte und neue Einträge die Beurteilung des Schedulings.

Wie bereinige ich Logs?

Behalte Zeit, Kommandos, Fehlercodes, Tool-Versionen und fehlerrelevante Pfadstrukturen; ersetze Benutzernamen, Repository-Adressen, Zugriffstoken, Zertifikatsinhalte, private Schlüssel und Geschäftsdaten. Lies die bereinigte Fassung erneut und prüfe den Reproduktionskontext.

Wie gelangt ein dringender Build-Fehler schneller in die Prüfung?

Kennzeichne im Betreff den Build-Fehler und nenne Bestellnummer, Knoten, Zeitpunkt, reproduzierbare Schritte, erwartetes und tatsächliches Ergebnis sowie bereinigte Logs. Die Bearbeitung erfolgt nach Vollständigkeit; vollständiger Kontext reduziert Rückfragen.

An den Mitarbeitersupport eskalieren

Ein ausführbares Support-Ticket erstellen

Bereite Bestellnummer, Knoten, Zeitpunkt und Zeitzone, Reproduktionsschritte, erwartetes und tatsächliches Ergebnis, bereits getestete Maßnahmen und bereinigte Logs vor. Bestehende Bestellungen können über die Konsole als Ticket eingereicht werden; Fragen zu Auswahl, Knoten und Abrechnung an support@numacs.com senden.

  • Keine Passwörter, privaten Schlüssel, Wiederherstellungscodes oder vollständigen Zahlungsdaten übermitteln.
  • Dringende Build-Fehler müssen reproduzierbare Belege und den ersten Ursachfehler enthalten.
  • Letzten erfolgreichen Lauf und Konfigurationsänderungen vor dem Fehler beschreiben.