/** * Initializes the properties of the given telemetry. * * @param telemetry The {@link com.microsoft.applicationinsights.telemetry.Telemetry} to initialize. */ @Override protected void onInitializeTelemetry(Telemetry telemetry) { RequestTelemetry requestTelemetry = ThreadContext.getRequestTelemetryContext().getHttpRequestTelemetry(); String userAgent = requestTelemetry.getContext().getUser().getUserAgent(); telemetry.getContext().getUser().setUserAgent(userAgent); } }
/** * Initializes the properties of the given telemetry. * * @param telemetry The {@link com.microsoft.applicationinsights.telemetry.Telemetry} to initialize. */ @Override protected void onInitializeTelemetry(Telemetry telemetry) { RequestTelemetry requestTelemetry = ThreadContext.getRequestTelemetryContext().getHttpRequestTelemetry(); String userAgent = requestTelemetry.getContext().getUser().getUserAgent(); telemetry.getContext().getUser().setUserAgent(userAgent); } }
@Test public void testSetUserAgent() { ConcurrentHashMap<String, String> map = new ConcurrentHashMap<String, String>(); UserContext context = new UserContext(map); context.setUserAgent("mock"); assertEquals("mock", context.getUserAgent()); assertEquals(1, map.size()); assertEquals("mock", map.get(ContextTagKeys.getKeys().getUserAgent())); } }
@Test public void testUserAgentIsBeingSet() throws Exception { HttpHelper.sendRequestAndGetResponseCookie(server.getPortNumber()); List<RequestTelemetry> items = channel.getTelemetryItems(RequestTelemetry.class); assertEquals(1, items.size()); RequestTelemetry requestTelemetry = items.get(0); Assert.assertEquals(HttpHelper.TEST_USER_AGENT, requestTelemetry.getContext().getUser().getUserAgent()); }
@Test public void testTelemetryIsUpdatedWithUserAgent() { TraceTelemetry telemetry = new TraceTelemetry("new telemetry"); initializer.onInitializeTelemetry(telemetry); Assert.assertEquals(HttpHelper.TEST_USER_AGENT, telemetry.getContext().getUser().getUserAgent()); } }