McpLogger öffnet Datei pro Log-Eintrag — Performance-Bottleneck #58

Open
opened 2026-03-08 18:39:11 +00:00 by automation · 0 comments
Collaborator

Problem

synchronized (McpLogger.class) {
    try (BufferedWriter writer = new BufferedWriter(new FileWriter(LOG_FILE, true))) {
        writer.write(logLine);
    }
}

Für jede Log-Zeile wird die Datei geöffnet, geschrieben und geschlossen. Bei 52 Tools unter Last ist das ein Performance-Problem und ein Bottleneck durch synchronized.

Vorschlag

Persistenter PrintWriter mit Double-Checked Locking oder java.util.logging.FileHandler.

Gefunden von

Gamma, Vogel, Duft (3/5 übereinstimmend)

## Problem ```java synchronized (McpLogger.class) { try (BufferedWriter writer = new BufferedWriter(new FileWriter(LOG_FILE, true))) { writer.write(logLine); } } ``` Für jede Log-Zeile wird die Datei geöffnet, geschrieben und geschlossen. Bei 52 Tools unter Last ist das ein Performance-Problem und ein Bottleneck durch `synchronized`. ## Vorschlag Persistenter `PrintWriter` mit Double-Checked Locking oder `java.util.logging.FileHandler`. ## Gefunden von Gamma, Vogel, Duft (3/5 übereinstimmend)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ai-tools/jdt-mcp-server#58
No description provided.