Zum Inhalt springen

Die richtigen Logs für die CodeCharter-Unterstützung sammeln

Welche Logs Sie bei einem Problem mitschicken, damit wir schnell helfen können.

Wenn Sie ein Problem mit CodeCharter haben, helfen uns die richtigen Logs, die Diagnose abzukürzen.

CLI-Verbose-Log

Der wichtigste Datenpunkt. Führen Sie den Problemfall mit --verbose aus (analyze erwartet den Pfad zu einer .sln-, .slnx- oder .csproj-Datei):

codecharter analyze MySolution.sln --verbose 2> codecharter.log

In codecharter.log steht:

  • Welches Regelverzeichnis verwendet wurde und wie viele Regeln daraus geladen wurden
  • Wie viele Typen und Methoden analysiert wurden
  • Stack-Traces, wenn die Analyse fehlschlägt

Wenn die Analyse hängt oder ungewöhnlich langsam ist, ergänzen Sie zusätzlich --progress. Das gibt einen Live-Fortschritt pro Projekt und pro Regel auf stderr aus und lässt sich mit --verbose kombinieren.

Hängen Sie die Datei an, wenn Sie uns schreiben.

VS-Code-Extension-Log

View → Output, im Dropdown "CodeCharter" auswählen, Inhalt kopieren. Der Befehl "CodeCharter: Show language server output" in der Befehlspalette öffnet denselben Kanal direkt.

Der Output-Kanal enthält das Log des Language-Servers. Um das Startverhalten zu reproduzieren, führen Sie einmal "CodeCharter: Restart language server" aus und kopieren dann den Inhalt. Beachten Sie: "CodeCharter: Analyze workspace" startet die CLI in einem VS-Code-Terminal, die Ausgabe erscheint also im Terminal und nicht im Output-Kanal.

Für detaillierte Kommunikationslogs zwischen VS Code und dem Language-Server setzen Sie in den VS-Code-Einstellungen codecharter.trace.server auf messages oder verbose, reproduzieren das Problem und kopieren den Inhalt des Output-Kanals.

CI-Logs

Bei einem CI-Problem:

  • GitHub Actions: den Workflow-Run anklicken, "View raw logs" klicken, Inhalt als .txt speichern.
  • GitLab: Job-Detail-Seite, "Show complete raw" oben rechts.
  • TeamCity: Build-Detail, "Build Log" Tab, "Download".
  • Andere: äquivalent.

Bei großen Logs reicht oft ein Ausschnitt um die relevante Stelle plus 20 Zeilen Kontext.

CLI-Version und System-Info

codecharter --version
dotnet --info
uname -a              # Linux / macOS
systeminfo            # Windows

Schicken Sie das ebenfalls mit. Es hilft uns, plattformspezifische Probleme einzugrenzen.

Solution-Info ohne sensitive Daten

# Zählt Projekte ohne Pfade preiszugeben (Linux / macOS)
find . -name "*.csproj" | wc -l

# Windows (PowerShell)
(Get-ChildItem -Recurse -Filter "*.csproj").Count

Wenn Sie eine konkrete Datei meinen, können Sie eine minimale Repro extrahieren, die kleinste Code-Stelle, die das Problem zeigt:

// minimal-repro.cs
using System;

public class Example
{
    public void Demo()
    {
        // Hier passiert das Problem
    }
}

Eine Solution mit einem Projekt mit dieser Datei reicht uns. Wir brauchen Ihre echte Codebasis nicht.

Networking-Logs

Wenn Sie Probleme mit dem CLI-Download haben:

# Ersetzen Sie IHR_KEY_HIER durch Ihren echten Key. Achtung: curl -v schreibt
# alle Request-Header, einschließlich des Authorization-Headers mit Ihrem Key,
# in network.log. Maskieren Sie ihn, bevor Sie die Datei verschicken.
curl -v -H "Authorization: Bearer IHR_KEY_HIER" \
    https://codecharter.tools/api/v1/cli/linux-x64/latest \
    -o codecharter.tar.gz 2> network.log

-v erzeugt den vollständigen HTTP-Trace. Bevor Sie network.log an uns schicken: Prüfen Sie, ob dort noch ein API-Key sichtbar ist. Der Authorization-Header ist im Request-Trace sichtbar. Ersetzen Sie ihn durch ***, bevor Sie die Datei anhängen.

Plattformprofil- und Lizenzprobleme

Wenn das Problem Plattformprofile oder Bundles betrifft, hängen Sie Ihre codecharter.lock.json und die Ausgabe von codecharter verify an. Der Befehl prüft den lokalen Bundle-Cache gegen das Lockfile und beendet sich mit Exit-Code 1, wenn er eine Abweichung erkennt.

Wenn die CLI wegen eines Lizenzproblems nicht startet, beendet sie sich immer mit Exit-Code 6 und gibt eine Meldung License error: ... auf stderr aus. Schicken Sie diese Meldung mit; sie benennt die Ursache meist direkt.

Portal-seitige Logs

Wenn das Problem im Portal liegt (Login geht nicht, Download bricht ab), können wir auf Anfrage nachschlagen, ob bei uns ein Fehler aufgetreten ist. Schicken Sie uns:

  • Die ungefähre Zeit (UTC)
  • Die E-Mail-Adresse, mit der Sie eingeloggt waren
  • Den Browser-Stack (Chrome 121, Firefox 122, ...)

Was wir NICHT brauchen

  • Ihre komplette Codebasis (auch nicht unter NDA, wir wollen sie schlicht nicht).
  • Klartext-API-Keys. Wenn ein Log einen Key zeigt, maskieren Sie ihn.
  • Klartext-Passwörter. Passwörter werden bei uns nur als Hashes gespeichert. Schicken Sie uns niemals ein Passwort.

Wie Sie das alles verschicken

E-Mail an support@codecharter.tools mit Logs als .txt- oder .log-Anhänge. Wenn die Dateien groß sind (mehrere MB), gerne als gzip oder zip.

Wir antworten in der Regel innerhalb von 24 Stunden an Werktagen.