@Override public TraceError locateFrameError(Frame frame) { Operation op = frame.getOperation(); return new TraceError(op.getLabel()); } }
public List<TraceError> locateErrors(Trace trace) { Frame root = trace.getRootFrame(); if (root == null) { return Collections.emptyList(); } Operation rootOp = root.getOperation(); String exception = rootOp.get(OperationFields.EXCEPTION, String.class); if (!StringUtil.isEmpty(exception)) { int chars = Math.min(exception.length(), MAX_ERROR_LENGTH); return Collections.singletonList(new TraceError(exception.substring(0, chars))); } return Collections.emptyList(); } }
public List<TraceError> locateErrors(Trace trace) { Frame root = trace.getRootFrame(); if (root == null) { return EMPTY_LIST; } Operation rootOp = root.getOperation(); String exception = rootOp.get(EXCEPTION, String.class); if (exception != null) { int chars = Math.min(exception.length(), MAX_ERROR_LENGTH); return singletonList(new TraceError(exception.substring(0, chars))); } return EMPTY_LIST; } }
public static StoreTraceCommandV18 getStoreTraceCommand() { Trace trace = TraceUtil.makeTrace("myapp", "/path", "traceid-1234"); Set<TraceTag> tags = new HashSet<TraceTag>(Arrays.asList(TraceTag.valueOf("mytag"),TraceTag.valueOf("mytag2"))); ResourceKey endPointKey = ResourceKey.valueOf("mytype", "blahblah-endPoint"); List<TraceError> errors = Arrays.asList(new TraceError("crashed")); DataPoint responseTime = DataPoint.dp(45, 23); return new StoreTraceCommandV18(trace, tags, Collections.singleton(endPointKey), errors, responseTime); }
@Override public TraceError locateFrameError(Frame frame) { Operation op=frame.getOperation(); String remoteError=op.get(HttpInvokerRequestExecutorOperationCollector.REMOTE_EXCEPTION, String.class); if (StringUtil.isEmpty(remoteError)) { return null; } else { return new TraceError(remoteError); } }
@Override public TraceError locateFrameError(Frame httpFrame) { Operation op = (httpFrame == null) ? null : httpFrame.getOperation(); // NOTE: if an IOException occurred we will not have a response either OperationMap response = (op == null) ? null : op.get("response", OperationMap.class); if (response == null) { return null; } int statusCode = response.getInt(STATUS_CODE_ATTR, (-1)); if ((statusCode < 0) /* no code */ || (!httpStatusIsError(statusCode))) { return null; } String reasonPhrase = response.get(REASON_PHRASE_ATTR, String.class); return new TraceError(createErrorMessage(statusCode, reasonPhrase)); }
@Override public TraceError locateFrameError(Frame httpFrame) { Operation op = (httpFrame == null) ? null : httpFrame.getOperation(); // NOTE: if an IOException occurred we will not have a response either OperationMap response = (op == null) ? null : op.get("response", OperationMap.class); if (response == null) { return null; } int statusCode = response.getInt(STATUS_CODE_ATTR, (-1)); if ((statusCode < 0) /* no code */ || (!httpStatusIsError(statusCode))) { return null; } String reasonPhrase = response.get(REASON_PHRASE_ATTR, String.class); return new TraceError(createErrorMessage(statusCode, reasonPhrase)); }
@Override public TraceError locateFrameError(Frame httpFrame) { Operation op = httpFrame.getOperation(); OperationMap response = op.get("response", OperationMap.class); int statusCode =(response == null) ? (-1) : response.getInt(STATUS_CODE_ATTR, (-1)); if ((statusCode >= 0) && httpStatusIsError(statusCode)) { return new TraceError(createErrorMessage(statusCode, response.get(REASON_PHRASE_ATTR, String.class))); } OperationMap request = op.get("request", OperationMap.class); Boolean contextAvailable = (request == null) ? null : request.get(OperationFields.CONTEXT_AVAILABLE, Boolean.class); if ((contextAvailable != null) && (!contextAvailable.booleanValue())) { return contextNotAvailableError; } else { return null; } }
@Override public TraceError locateFrameError(Frame httpFrame) { Operation op = (httpFrame == null) ? null : httpFrame.getOperation(); // NOTE: if an IOException occurred we will not have a response either OperationMap response = (op == null) ? null : op.get("response", OperationMap.class); if (response == null) { return null; } int statusCode = response.getInt(STATUS_CODE_ATTR, (-1)); if ((statusCode < 0) /* no code */ || (!httpStatusIsError(statusCode))) { return null; } String reasonPhrase = response.get(REASON_PHRASE_ATTR, String.class); return new TraceError(createErrorMessage(statusCode, reasonPhrase)); }