Frühlingseinblick stürzt mit "Unbalanced frame stack" ab

8

Ich möchte Spring Insight verwenden, um meine spring mvc webapp zu verfolgen. Wenn ich die Entwicklerversion tc server 2.5 starte, erscheint meine Anwendung, aber ich sehe folgende Meldung in der Konsole:

%Vor%

-

%Vor%

Ich kann einige Controller-Aktionen nach dieser Nachricht aufrufen, aber irgendwann verweigert der Server einfach meine Anfragen und sendet die gleiche Stack-Trace an den Browser.

Hat jemand Erfahrung mit diesem Problem? Selbst wenn die Plugins annotation , hibernate , jdbc oder spring-tx deaktiviert werden, ist das Problem nicht gelöst.

    
powerMicha 11.10.2011, 11:15
quelle

2 Antworten

8

Jon Travis ist fast genau richtig, aber die Systemeigenschaft ist

%Vor%

Der Standardwert ist 3000, wie in insight-intercept-1.5.1.SR2.jar: com.springsource.insight.intercept.trace.FrameBuilder

zu sehen ist

Das Ändern des Wertes in -Dinsight-max-frames=6000 hat das Problem für mich behoben.

    
Brad Cupit 04.01.2012, 23:19
quelle
8

Ein Teil dieses Codes wurde in den letzten Versionen verbessert.

Vielleicht möchten Sie Spring Insight 1.5.1 ausprobieren - es wird mit tc Server 2.6.1 geliefert und ist über springsource.org/insight verfügbar

EDIT: Das Problem, das Sie sehen, ist, dass ein einzelner Trace versucht hat, zu viele Frames zu akkumulieren (standardmäßig hört er bei 1000 zu zählen auf). Dies liegt daran, dass Ihre Anwendung beim Start viele SQL-Aufrufe oder viele andere instrumentierte Aufrufe ausführt. Sobald dies erkannt wird, hört es auf, Frames zu sammeln und (derzeit) einen unausgeglichenen Frame-Stack zu erhalten. Der Fehler ist gut für Ihren Fall.

Sie können die Anzahl der Frames bis zum Maximum erhöhen, indem Sie eine Java-Sysproperty (insight.max.frames) festlegen.

Fügen Sie in bin / setenv.sh einfach JVM_OPTS hinzu:

%Vor%     
Jon Travis 11.10.2011 15:25
quelle