Package org.drift.tracker.utils

Examples of org.drift.tracker.utils.Indentor


        TrackerFactory.getTracker(trackerName).clearCallStats();
    }

    @Override
    public String getActiveApplicationThreads() {
        Indentor indentor = new Indentor();
        Map<String, Tracker> trackers = TrackerFactory.getTrackers();
        for (Map.Entry<String, Tracker> entry : trackers.entrySet()) {
            indentor.append(ThreadUtils.getDeadlockedThreads());
            indentor.newline();

            String trackerName = entry.getKey();
            indentor.append("Tracker: " + trackerName);

            Tracker tracker = entry.getValue();
            Map<Thread, Stack<CallInProgress>> map = tracker.getCalls();
            for (Map.Entry<Thread, Stack<CallInProgress>> threadEntry : map.entrySet()) {
                Thread thread = threadEntry.getKey();
                ThreadUtils.dumpThreadStatus(thread.getId(), indentor);

                Stack<CallInProgress> calls = threadEntry.getValue();
                StatusSummaries.appendCalls(calls, indentor);
            }
        }

        return indentor.toString();
    }
View Full Code Here


    private static int callTimeout = 30000;

    public String getSlowCallsAsString(String trackerName) {
        Tracker tracker = TrackerFactory.getTracker(trackerName);
        Map<Thread, Stack<CallInProgress>> map = tracker.getCalls();
        Indentor indentor = new Indentor();
        for (Map.Entry<Thread, Stack<CallInProgress>> threadEntry : map.entrySet()) {
            Thread thread = threadEntry.getKey();
            Stack<CallInProgress> calls = threadEntry.getValue();

            CallInProgress firstCall;
            try {
                firstCall = calls.peek();
            } catch (EmptyStackException e) {
                continue;
            }

            long startTime = firstCall.timestamp;
            long elapsed = System.currentTimeMillis() - startTime;
            if (elapsed > callTimeout) {
                indentor.newline();
                indentor.append("Maximum time allowed for application call [" + firstCall.call + "] elapsed (" + elapsed + " ms)");
                indentor.newline();
                ThreadUtils.dumpThreadStatus(thread.getId(), indentor);
                appendCalls(calls, indentor);
            }
        }

        String message = indentor.toString();
        if (!StringUtils.isEmpty(message)) {
            indentor.newline();
            indentor.append(ThreadUtils.getThreadDump());
            return indentor.toString();
        }

        return "";
    }
View Full Code Here

        double megs = ((double) val) / 1024 / 1024;
        return formatter.format(megs);
    }

    public static String getAllCallsAsString(Stack<CallInProgress> calls) {
        Indentor indentor = new Indentor();
        appendCalls(calls, indentor);
        return indentor.toString();
    }
View Full Code Here

TOP

Related Classes of org.drift.tracker.utils.Indentor

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.