Communardo Software GmbH, Kleiststraße 10 a, D-01129 Dresden
0800 1 255 255

Confluence Profiler aktivieren

Was ist Profiling?


Als Profiler wer­den Programmierwerkzeuge bezeich­net, die das Laufzeitverhalten von Software ana­ly­sie­ren. Es gibt unter­schied­li­che Problembereiche in der Softwareentwicklung, die durch inef­fi­zi­ente Programmierung aus­ge­löst wer­den. Ein Profiler hilft dem Entwickler durch Analyse und Vergleich von lau­fen­den Programmen die Problembereiche auf­zu­de­cken. Daraus kann man Maßnahmen zur struk­tu­rel­len und algo­rith­mi­schen Verbesserung des Quellcodes ablei­ten.

Die häu­figste Anwendung eines Profilers ist das Zählen und Messen der Aufrufe und Durchläufe von Funktionen. Dies ermög­licht es dem Programmierer her­aus­zu­fin­den, wo sich eine Optimierung des Programms lohnt. Eine Optimierung von Funktionen, die nicht häu­fig ver­wen­det wer­den, ist der Gesamtleistung des Programms nicht son­der­lich zuträg­lich und erschwert in der Regel die Wartbarkeit des Quellcodes. Deshalb wird das Hauptaugenmerk auf Funktionen gelegt, die oft auf­ge­ru­fen wer­den und in der Summe der Aufrufe viel Zeit benö­ti­gen.

Wie aktiviere ich die Profiling Funktionalität von Confluence?


  1. Damit das Profiling in Confluence gene­rell funk­tio­niert, muss
    1. ent­we­der die fol­gende Zeile in die log4j.properties (Fundort: <tomcat-path>/confluence/WEB-INF/classes) ein­ge­pflegt wer­den
      ## Atlassian Profiling
      log4j.logger.com.atlassian.util.profiling.UtilTimerStack=DEBUG
    2. oder in der Administrationskonsole der aktu­el­len Confluence-Instanz unter Protokoll- und Profilerstellung der Eintrag log4j.logger.com.atlassian.util.profiling.UtilTimerStack auf DEBUG hin­zu­ge­fügt wer­den.
  2. Des Weiteren muss in der Administrationskonsole der aktu­el­len Confluence-Instanz unter Protokoll- und Profilerstellung die Profilerstellung akti­viert wer­den.
  3. optio­nal: Man kann mit­tels log4j es noch so ein­rich­ten, dass die Profile-Log Ausgaben in eine sepa­rate Datei lan­den. Die fol­gen­den Änderungen müs­sen wie­der in der Datei log4j.properties (Fundort: <tomcat-path>/confluence/WEB-INF/classes) umge­setzt wer­den.
    1. Es ist not­wen­dig einen neuen FileAppender zu defi­nie­ren.
      ####
      # PROFILING LOG APPENDER
      ###
      log4j.appender.profiling=org.apache.log4j.RollingFileAppender
      log4j.appender.profiling.Threshold=DEBUG
      log4j.appender.profiling.File=${catalina.home}/logs/profiling.log
      log4j.appender.profiling.layout=org.apache.log4j.PatternLayout
      log4j.appender.profiling.layout.ConversionPattern=%d %p [%c{4}] %m%n
    2. Letztlich muss der Appender der zu über­wa­chen­den Klasse ange­han­gen wer­den. Dazu ändert man ledig­lich die Zeile:
      log4j.logger.com.atlassian.util.profiling.UtilTimerStack=DEBUG

      in

      log4j.logger.com.atlassian.util.profiling.UtilTimerStack=DEBUG, profiling

      ab!

andere Werkzeuge


Zur Ergänzung wer­den an die­ser Stelle noch zwei Profiler genannt, auf die aller­dings nicht näher ein­ge­gan­gen wird.

YourKit Profiler

Als Besonderheit bei die­sem Profiler ist zu nen­nen, dass es für Confluence ein Plugin exis­tiert, wel­ches dem Administrator ermög­licht, die für die Auswertung not­wen­di­gen Dumps (CPU und Speicher) über die Administrationskonsole zu gene­rie­ren.

Referenzlinks
YourKit Profiler: http://www.yourkit.com/
Confluence Dokumentation zum Plugin: http://confluence.atlassian.com/display/CONF210/Profiling+using+the+YourKit+Plugin
Achtung!
Für die Software YourKit Profiler, die zur Dump-Auswertung benö­tigt wird, braucht man eine Lizenz. Es gibt eine Evaluierungslizenz, die aller­dings nur für 15 Tage aus­ge­legt ist. Nach Ablauf die­ser Frist muss eine Lizenz erworben/gekauft wer­den.

JProfiler

Dies Software besitzt ver­gleich­bare Funktionalitäten, wie der YourKit Profiler.

Achtung!
Für die Software JProfiler, die zur Dump-Auswertung benö­tigt wird, braucht man eine Lizenz. Es gibt eine Evaluierungslizenz, die aller­dings nur für 10 Tage aus­ge­legt ist. Nach Ablauf die­ser Frist muss eine Lizenz erworben/gekauft wer­den.

Related Posts

Pin It on Pinterest