protected void storeThreadEvent(ThreadTraceEvent snap) throws IOException { TagCollection stags = (snap instanceof TaggedEvent) ? ((TaggedEvent)snap).tags() : null; CounterCollection scc = (snap instanceof MultiCounterEvent) ? ((MultiCounterEvent)snap).counters() : null; tagBuilder.clear(); markTags(); // mark unconditionally long timestamp = -1; if (snap instanceof TimestampedEvent) { markTimestamp(); timestamp = ((TimestampedEvent) snap).timestamp(); } //TODO empty stack trace is encoded for compatibility with old readers if (snap.stackTrace() != null /*&& !snap.stackTrace().isEmpty()*/) { markThreadStackTrace(); for(StackFrame ste: snap.stackTrace()) { intern(ste); } } if (scc != null) { ensureCounters(scc); } int tagSetId = ensureTagSet(stags); dos.writeByte(StackTraceCodec.TAG_EVENT); StackTraceCodec.writeVarInt(dos, tagSetId); writeTimestamp(timestamp); writeCounters(scc); writeTrace(snap.stackTrace()); }
public void loadFromRawEvent(ThreadTraceEvent event) { threadId(-1); threadName(null); threadState(null); CommonEvent cevent = (CommonEvent)event; copyCommonEventFrom(cevent); if (cevent.counters().getValue(JvmEvents.THREAD_ID) >= 0) { threadId(cevent.counters().getValue(JvmEvents.THREAD_ID)); } threadName(cevent.tags().firstTagFor(JvmEvents.THREAD_NAME)); threadState(state(cevent.tags().firstTagFor(JvmEvents.THREAD_STATE))); stackTrace(event.stackTrace()); }
protected void storeThreadEvent(ThreadTraceEvent snap) throws IOException { TagCollection stags = (snap instanceof TaggedEvent) ? ((TaggedEvent)snap).tags() : null; CounterCollection scc = (snap instanceof MultiCounterEvent) ? ((MultiCounterEvent)snap).counters() : null; tagBuilder.clear(); markTags(); // mark unconditionally long timestamp = -1; if (snap instanceof TimestampedEvent) { markTimestamp(); timestamp = ((TimestampedEvent) snap).timestamp(); } //TODO empty stack trace is encoded for compatibility with old readers if (snap.stackTrace() != null /*&& !snap.stackTrace().isEmpty()*/) { markThreadStackTrace(); for(StackFrame ste: snap.stackTrace()) { intern(ste); } } if (scc != null) { ensureCounters(scc); } int tagSetId = ensureTagSet(stags); dos.writeByte(StackTraceCodec.TAG_EVENT); StackTraceCodec.writeVarInt(dos, tagSetId); writeTimestamp(timestamp); writeCounters(scc); writeTrace(snap.stackTrace()); }
public void loadFromRawEvent(ThreadTraceEvent event) { threadId(-1); threadName(null); threadState(null); CommonEvent cevent = (CommonEvent)event; copyCommonEventFrom(cevent); if (cevent.counters().getValue(JvmEvents.THREAD_ID) >= 0) { threadId(cevent.counters().getValue(JvmEvents.THREAD_ID)); } threadName(cevent.tags().firstTagFor(JvmEvents.THREAD_NAME)); threadState(state(cevent.tags().firstTagFor(JvmEvents.THREAD_STATE))); stackTrace(event.stackTrace()); }