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%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.
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.
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%Tags und Links java spring spring-mvc stackframe spring-insight