@Test public void testChildRequestDependencyIdGenerationWithNonHierarchicalRequestId() { //setup Hashtable<String, String> headers = new Hashtable<String, String>(); String incomingId = "guid"; headers.put(TelemetryCorrelationUtils.CORRELATION_HEADER_NAME, incomingId); HttpServletRequest request = ServletUtils.createServletRequestWithHeaders(headers); HttpServletResponse response = (HttpServletResponse)ServletUtils.generateDummyServletResponse(); RequestTelemetryContext context = new RequestTelemetryContext(DateTimeUtils.getDateTimeNow().getTime()); ThreadContext.setRequestTelemetryContext(context); RequestTelemetry requestTelemetry = context.getHttpRequestTelemetry(); //run TelemetryCorrelationUtils.resolveCorrelation(request, response, requestTelemetry); String childId = TelemetryCorrelationUtils.generateChildDependencyId(); //Incoming ID is non-hierarchical, so we must not modidy outgoing (child) id Assert.assertNotNull(childId); Assert.assertEquals(incomingId, childId); }
@Test public void testChildRequestDependencyIdGenerationWithMultipleRequests() { //setup Hashtable<String, String> headers = new Hashtable<String, String>(); String incomingId = "|guid_1."; headers.put(TelemetryCorrelationUtils.CORRELATION_HEADER_NAME, incomingId); HttpServletRequest request = ServletUtils.createServletRequestWithHeaders(headers); HttpServletResponse response = (HttpServletResponse)ServletUtils.generateDummyServletResponse(); RequestTelemetryContext context = new RequestTelemetryContext(DateTimeUtils.getDateTimeNow().getTime()); ThreadContext.setRequestTelemetryContext(context); RequestTelemetry requestTelemetry = context.getHttpRequestTelemetry(); //run TelemetryCorrelationUtils.resolveCorrelation(request, response, requestTelemetry); String childId = TelemetryCorrelationUtils.generateChildDependencyId(); //validate we have generated proper ID's Assert.assertNotNull(childId); Assert.assertEquals(requestTelemetry.getId() + "1.", childId); // generate second child childId = TelemetryCorrelationUtils.generateChildDependencyId(); Assert.assertNotNull(childId); Assert.assertEquals(requestTelemetry.getId() + "2.", childId); }
@Test public void testChildRequestDependencyIdGeneration() { //setup Hashtable<String, String> headers = new Hashtable<String, String>(); String incomingId = "|guid_1."; headers.put(TelemetryCorrelationUtils.CORRELATION_HEADER_NAME, incomingId); HttpServletRequest request = ServletUtils.createServletRequestWithHeaders(headers); HttpServletResponse response = (HttpServletResponse)ServletUtils.generateDummyServletResponse(); RequestTelemetryContext context = new RequestTelemetryContext(DateTimeUtils.getDateTimeNow().getTime()); ThreadContext.setRequestTelemetryContext(context); RequestTelemetry requestTelemetry = context.getHttpRequestTelemetry(); //run TelemetryCorrelationUtils.resolveCorrelation(request, response, requestTelemetry); String childId = TelemetryCorrelationUtils.generateChildDependencyId(); //validate we have generated proper ID's Assert.assertNotNull(childId); Assert.assertEquals(requestTelemetry.getId() + "1.", childId); }
@Test public void testChildRequestDependencyIdGenerationWithNoParentId() { //setup - make sure no RequestId is set (i.e. no parent) Hashtable<String, String> headers = new Hashtable<String, String>(); HttpServletRequest request = ServletUtils.createServletRequestWithHeaders(headers); HttpServletResponse response = (HttpServletResponse)ServletUtils.generateDummyServletResponse(); RequestTelemetryContext context = new RequestTelemetryContext(DateTimeUtils.getDateTimeNow().getTime()); ThreadContext.setRequestTelemetryContext(context); RequestTelemetry requestTelemetry = context.getHttpRequestTelemetry(); //run TelemetryCorrelationUtils.resolveCorrelation(request, response, requestTelemetry); String childId = TelemetryCorrelationUtils.generateChildDependencyId(); //validate we have generated proper ID's Assert.assertNotNull(childId); Assert.assertEquals(requestTelemetry.getId() + "1.", childId); }