use of com.amazonaws.xray.entities.Subsegment in project aws-xray-sdk-java by aws.
the class SqlSubsegmentsTest method testPrefersMetaDataFromUrl.
@Test
void testPrefersMetaDataFromUrl() {
WeakConcurrentMap<Connection, ConnectionInfo> map = new WeakConcurrentMap.WithInlinedExpunction<>();
map.put(connection, new ConnectionInfo.Builder().sanitizedUrl("jdbc:oracle:rds.us-west-2.com").user("another").dbName("newDb").host("rds.us-west-2.com").build());
SqlSubsegments.setConnMap(map);
Subsegment sub = SqlSubsegments.forQuery(connection, SQL);
assertThat(sub.getName()).isEqualTo("newDb@rds.us-west-2.com");
assertThat(sub.getSql()).containsEntry("url", "jdbc:oracle:rds.us-west-2.com");
assertThat(sub.getSql()).containsEntry("user", "another");
}
use of com.amazonaws.xray.entities.Subsegment in project aws-xray-sdk-java by aws.
the class SqlSubsegmentsTest method testHostIsNotNull.
@Test
void testHostIsNotNull() throws SQLException {
when(metaData.getURL()).thenReturn("some invalid URL");
Subsegment sub = SqlSubsegments.forQuery(connection, SQL);
assertThat(sub.getName()).isEqualTo(CATALOG);
}
use of com.amazonaws.xray.entities.Subsegment in project aws-xray-sdk-java by aws.
the class SLF4JSegmentListenerTest method testNestedSubsegmentInjection.
@Test
public void testNestedSubsegmentInjection() {
SLF4JSegmentListener listener = (SLF4JSegmentListener) AWSXRay.getGlobalRecorder().getSegmentListeners().get(0);
listener.setPrefix("");
Segment seg = new SegmentImpl(AWSXRay.getGlobalRecorder(), "test", traceID);
listener.onSetEntity(null, seg);
Subsegment sub1 = new SubsegmentImpl(AWSXRay.getGlobalRecorder(), "test1", seg);
listener.onSetEntity(seg, sub1);
Subsegment sub2 = new SubsegmentImpl(AWSXRay.getGlobalRecorder(), "test2", seg);
listener.onSetEntity(sub1, sub2);
Assert.assertEquals(traceID.toString() + "@" + sub2.getId(), MDC.get(TRACE_ID_KEY));
}
use of com.amazonaws.xray.entities.Subsegment in project aws-xray-sdk-java by aws.
the class XRaySpringDataInterceptor method traceSQL.
@Around("queryExecution()")
public Object traceSQL(ProceedingJoinPoint pjp) throws Throwable {
try {
Subsegment subsegment = AWSXRay.beginSubsegment(pjp.getSignature().getName());
XRayInterceptorUtils.generateMetadata(pjp, subsegment);
return XRayInterceptorUtils.conditionalProceed(pjp);
} catch (Exception e) {
logger.error(e.getMessage());
AWSXRay.getCurrentSegment().addException(e);
throw e;
} finally {
logger.trace("Ending Subsegment");
AWSXRay.endSubsegment();
}
}
use of com.amazonaws.xray.entities.Subsegment in project aws-xray-sdk-java by aws.
the class TracedResponseHandlerTest method testHandleResponse200SetsNoFlags.
@Test
void testHandleResponse200SetsNoFlags() {
Segment segment = segmentInResponseToCode(200);
Subsegment subsegment = segment.getSubsegments().get(0);
Assertions.assertFalse(subsegment.isFault());
Assertions.assertFalse(subsegment.isError());
Assertions.assertFalse(subsegment.isThrottle());
}
Aggregations