Jelajahi Sumber

add logging statements for WALA

Miaomz 6 tahun lalu
induk
melakukan
59ce6f0205

+ 4 - 6
src/main/java/com/moekr/moocoder/logic/api/Wala.java

@@ -17,6 +17,7 @@ import com.ibm.wala.util.graph.traverse.DFS;
 import com.ibm.wala.util.io.FileProvider;
 import lombok.Getter;
 import lombok.Setter;
+import lombok.extern.apachecommons.CommonsLog;
 
 import java.io.File;
 import java.io.IOException;
@@ -30,6 +31,7 @@ import java.util.stream.Stream;
  * @author miaomuzhi
  * @since 2020/4/30
  */
+@CommonsLog
 public class Wala {
     @Getter
     @Setter
@@ -52,7 +54,7 @@ public class Wala {
             scope = AnalysisScopeReader.makeJavaBinaryAnalysisScope(app, exFile);
             cha = ClassHierarchyFactory.make(scope);
         } catch (IOException|ClassHierarchyException e) {
-            e.printStackTrace();
+            log.error(e);
         }
     }
 
@@ -76,7 +78,7 @@ public class Wala {
 
             cha = ClassHierarchyFactory.make(scope);
         } catch (IOException|ClassHierarchyException e) {
-            e.printStackTrace();
+            log.error(e);
         }
     }
 
@@ -146,10 +148,6 @@ public class Wala {
     }
 
 
-
-
-
-
     public CallGraph getCGByMethod(IMethod entry) throws IllegalArgumentException, CallGraphBuilderCancelException {
         //System.out.println(entry.toString());
         ArrayList<Entrypoint> points = new ArrayList<Entrypoint>();

+ 3 - 0
src/main/java/com/moekr/moocoder/logic/service/impl/CodeMetricServiceImpl.java

@@ -5,6 +5,7 @@ import com.moekr.moocoder.logic.service.CodeMetricService;
 import com.moekr.moocoder.logic.vo.*;
 import com.moekr.moocoder.util.FileUtil;
 import com.moekr.moocoder.util.enums.Granularity;
+import lombok.extern.apachecommons.CommonsLog;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -17,6 +18,7 @@ import java.util.Set;
  * @author miaomuzhi
  * @since 2020/5/24
  */
+@CommonsLog
 @Component
 public class CodeMetricServiceImpl implements CodeMetricService{
     private OOPMetricAnalyzer analyzer;
@@ -34,6 +36,7 @@ public class CodeMetricServiceImpl implements CodeMetricService{
     public CodeScaleMetricVO getCodeScaleMetric(String project) {
         CallGraphVO methodGraph = visualizer.getForceDirectedGraph(project, Granularity.METHOD);
         if (methodGraph == null) {
+            log.warn(new NullPointerException("There is no call graph returned"));
             return new CodeScaleMetricVO(0, 0, 0);
         }