[Title] multi-process drop log filter added
authorjooyoul_lee <jy.exe.lee@samsung.com>
Thu, 9 Jan 2014 05:14:29 +0000 (14:14 +0900)
committerjooyoul_lee <jy.exe.lee@samsung.com>
Thu, 9 Jan 2014 05:14:29 +0000 (14:14 +0900)
[Desc.] OspMain check - C++ type app (tizen app)
[Issue]

org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/callstack/SWAPCallStackManager.java
org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/channel/data/ProcessInfoPackage.java
org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/logparser/MessageParser.java
org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/logparser/SWAPLogParser.java

index ca70686..9686a6c 100644 (file)
@@ -236,10 +236,12 @@ public class SWAPCallStackManager extends BaseCallstackManager {
                                                .println("makeUserCallstack : EXIT self is not the same as top of user callstack");
                        }
                        if (AnalyzerManager.isOsp()) {
-                               // String apiName = input[LogCenterConstants.APINAME_INDEX];
                                String apiName = log.getApiName();
                                if (apiName.equals("OspMain")) { //$NON-NLS-1$
-                                       SWAPLogParser.setDropCallTraceLog(true);
+                                       ProcessInfoPackage processInfoPkg = AnalyzerManager
+                                                       .getProject().getProcessInfo(log.getPid());
+                                       // SWAPLogParser.setDropCallTraceLog(true);
+                                       processInfoPkg.setDropLog(true);
                                }
                        }
                }
@@ -373,8 +375,7 @@ public class SWAPCallStackManager extends BaseCallstackManager {
                                .getPid());
                HashMap<Integer, DuplicateUserCall> dupUserCallMap = getDupUserCallByTidMap();
 
-               boolean isPieBuild = isPieBuild(input.getPid(),
-                               input.getTime());
+               boolean isPieBuild = isPieBuild(input.getPid(), input.getTime());
                String baseAddr = Long.toString(AnalyzerManager.getProject()
                                .getBaseAddress(input.getPid(), log.getTime()));
                String sourceBinPath = AnalyzerUtil.getBinarySourcePath(input.getPid(),
@@ -469,7 +470,7 @@ public class SWAPCallStackManager extends BaseCallstackManager {
                        return false;
                }
        }
-       
+
        public boolean isPieBuild(int pid, long time) {
                ProcessInfoPackage processInfoPkg = AnalyzerManager.getProject()
                                .getProcessInfo(pid);
index 272e85c..5d215a6 100644 (file)
@@ -11,6 +11,7 @@ public class ProcessInfoPackage {
        private int ppid = -1;
        private String targetBinaryPath = null;
        private int functionEntryInsertLogCount = 0;
+       private boolean dropLog = false;
 
        private List<ProcessInfo> processSnapshots = new ArrayList<ProcessInfo>();
 
@@ -84,4 +85,12 @@ public class ProcessInfoPackage {
        public void addFunctionEntryInsertLogCount() {
                this.functionEntryInsertLogCount++;
        }
+
+       public boolean isDropLog() {
+               return dropLog;
+       }
+
+       public void setDropLog(boolean dropLog) {
+               this.dropLog = dropLog;
+       }
 }
index c2b3da6..bd3eea9 100755 (executable)
@@ -60,7 +60,6 @@ import org.tizen.dynamicanalyzer.swap.model.data.LogData;
 import org.tizen.dynamicanalyzer.swap.model.data.LogDataFactory;
 import org.tizen.dynamicanalyzer.swap.model.data.LogDataUtils;
 import org.tizen.dynamicanalyzer.ui.thread.ThreadChartManager;
-import org.tizen.dynamicanalyzer.ui.thread.thread.ThreadPageThreadDataManager;
 import org.tizen.dynamicanalyzer.ui.toolbar.StopLogProcessor;
 import org.tizen.dynamicanalyzer.ui.toolbar.StopProcessManager;
 import org.tizen.dynamicanalyzer.ui.toolbar.ToolbarArea;
@@ -250,7 +249,7 @@ public class MessageParser {
                String applicationType = DACommunicator.getSelectedApp().getInfo(
                                AppInfo.APPTYPE_INDEX);
                if (applicationType.contains(AppInfo.APPTYPE_CPP)) {
-                       SWAPLogParser.setDropCallTraceLog(true);
+                       pInfoPack.setDropLog(true);
                }
                AnalyzerManager.setProcessInfoArrived(true);
                
index c2c38b4..50e4fab 100755 (executable)
@@ -66,7 +66,7 @@ public class SWAPLogParser implements Runnable {
        private static Thread logParser = null;
        // default false, turn on when Tizen C++ app
        // private static boolean dropCallTraceLog = true;
-       private static boolean dropCallTraceLog = false;
+//     private static boolean dropCallTraceLog = false;
        private static LogQueue logQueue = null;
 
        private int SMALL_IMG_WIDTH = 40;
@@ -82,14 +82,6 @@ public class SWAPLogParser implements Runnable {
                return logQueue;
        }
 
-       public static void setDropCallTraceLog(boolean drop) {
-               dropCallTraceLog = drop;
-       }
-
-       public static boolean isDropCallTraceLog() {
-               return dropCallTraceLog;
-       }
-
        public static synchronized void startLogParser() {
                getLogQueue().clear();
                // why here?
@@ -159,6 +151,9 @@ public class SWAPLogParser implements Runnable {
                                        ProfileData pData = (ProfileData) log;
                                        long pcAddr = pData.getPcAddr();
 
+                                       ProcessInfoPackage processInfoPkg = AnalyzerManager
+                                                       .getProject().getProcessInfo(pData.getPid());
+                                       
                                        String apiName = pData.getApiName();
                                        if (null == apiName || apiName.isEmpty()
                                                        || apiName.equals("_end")) { //$NON-NLS-1$
@@ -171,10 +166,10 @@ public class SWAPLogParser implements Runnable {
                                                }
                                        }
 
-                                       if (isDropCallTraceLog()) {
+                                       if (processInfoPkg.isDropLog()) {
                                                apiName = pData.getApiName();
                                                if (apiName.contains(OSP_MAIN)) {
-                                                       setDropCallTraceLog(false);
+                                                       processInfoPkg.setDropLog(false);
                                                } else {
                                                        continue;
                                                }
@@ -186,8 +181,6 @@ public class SWAPLogParser implements Runnable {
                                                continue;
                                        }
 
-                                       ProcessInfoPackage processInfoPkg = AnalyzerManager
-                                                       .getProject().getProcessInfo(pData.getPid());
                                        ProcessInfo processInfo = processInfoPkg
                                                        .getProcessInfo(pData.getTime());