Author: bentmann Date: Tue Aug 18 10:41:12 2009 New Revision: 805351 URL: http://svn.apache.org/viewvc?rev=805351&view=rev Log: o Improved logging
Modified: maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/cli/LifecycleEventLogger.java Modified: maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/cli/LifecycleEventLogger.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/cli/LifecycleEventLogger.java?rev=805351&r1=805350&r2=805351&view=diff ============================================================================== --- maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/cli/LifecycleEventLogger.java (original) +++ maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/cli/LifecycleEventLogger.java Tue Aug 18 10:41:12 2009 @@ -29,6 +29,7 @@ import org.apache.maven.execution.BuildSuccess; import org.apache.maven.execution.BuildSummary; import org.apache.maven.execution.MavenExecutionResult; +import org.apache.maven.execution.MavenSession; import org.apache.maven.lifecycle.AbstractLifecycleListener; import org.apache.maven.lifecycle.LifecycleEvent; import org.apache.maven.plugin.descriptor.MojoDescriptor; @@ -77,6 +78,7 @@ if ( time / 60000L > 0 ) { pattern = "m:s" + pattern; + if ( time / 3600000L > 0 ) { pattern = "H:m" + pattern; @@ -112,49 +114,98 @@ { if ( logger.isInfoEnabled() ) { + if ( event.getSession().getProjects().size() > 1 ) + { + logReactorSummary( event.getSession() ); + } + + logResult( event.getSession() ); + + logStats( event.getSession() ); + logger.info( chars( '-', LINE_LENGTH ) ); - logger.info( "Reactor Summary:" ); - logger.info( chars( '-', LINE_LENGTH ) ); + } + } - MavenExecutionResult result = event.getSession().getResult(); + private void logReactorSummary( MavenSession session ) + { + logger.info( chars( '-', LINE_LENGTH ) ); + logger.info( "Reactor Summary:" ); + logger.info( chars( '-', LINE_LENGTH ) ); - for ( MavenProject project : event.getSession().getProjects() ) - { - StringBuilder buffer = new StringBuilder( 128 ); + MavenExecutionResult result = session.getResult(); - buffer.append( project.getName() ); + for ( MavenProject project : session.getProjects() ) + { + StringBuilder buffer = new StringBuilder( 128 ); - while ( buffer.length() < LINE_LENGTH - 22 ) - { - buffer.append( '.' ); - } - - BuildSummary buildSummary = result.getBuildSummary( project ); - - if ( buildSummary == null ) - { - buffer.append( "SKIPPED" ); - } - else if ( buildSummary instanceof BuildSuccess ) - { - buffer.append( "SUCCESS [" ); - buffer.append( getFormattedTime( buildSummary.getTime() ) ); - buffer.append( "]" ); - } - else if ( buildSummary instanceof BuildFailure ) - { - buffer.append( "FAILURE [" ); - buffer.append( getFormattedTime( buildSummary.getTime() ) ); - buffer.append( "]" ); - } + buffer.append( project.getName() ); - logger.info( buffer.toString() ); + buffer.append( ' ' ); + while ( buffer.length() < LINE_LENGTH - 21 ) + { + buffer.append( '.' ); } + buffer.append( ' ' ); - logger.info( chars( '-', LINE_LENGTH ) ); + BuildSummary buildSummary = result.getBuildSummary( project ); + + if ( buildSummary == null ) + { + buffer.append( "SKIPPED" ); + } + else if ( buildSummary instanceof BuildSuccess ) + { + buffer.append( "SUCCESS [" ); + buffer.append( getFormattedTime( buildSummary.getTime() ) ); + buffer.append( "]" ); + } + else if ( buildSummary instanceof BuildFailure ) + { + buffer.append( "FAILURE [" ); + buffer.append( getFormattedTime( buildSummary.getTime() ) ); + buffer.append( "]" ); + } + + logger.info( buffer.toString() ); } } + private void logResult( MavenSession session ) + { + logger.info( chars( '-', LINE_LENGTH ) ); + + if ( session.getResult().hasExceptions() ) + { + logger.info( "BUILD FAILURE" ); + } + else + { + logger.info( "BUILD SUCCESS" ); + } + } + + private void logStats( MavenSession session ) + { + logger.info( chars( '-', LINE_LENGTH ) ); + + Date finish = new Date(); + + long time = finish.getTime() - session.getRequest().getStartTime().getTime(); + + logger.info( "Total time: " + getFormattedTime( time ) ); + + logger.info( "Finished at: " + finish ); + + System.gc(); + + Runtime r = Runtime.getRuntime(); + + long MB = 1024 * 1024; + + logger.info( "Final Memory: " + ( r.totalMemory() - r.freeMemory() ) / MB + "M/" + r.totalMemory() / MB + "M" ); + } + @Override public void projectSkipped( LifecycleEvent event ) { @@ -170,7 +221,9 @@ { if ( logger.isInfoEnabled() ) { + logger.info( chars( '-', LINE_LENGTH ) ); logger.info( "Building " + event.getProject().getName() ); + logger.info( chars( '-', LINE_LENGTH ) ); } }