@Test public void testCtor() { PageViewTelemetry telemetry = new PageViewTelemetry("MockName"); assertEquals("MockName", telemetry.getName()); assertNull(telemetry.getUri()); assertTrue(telemetry.getMetrics().isEmpty()); assertTrue(telemetry.getProperties().isEmpty()); assertEquals(0, telemetry.getDuration()); }
@Override public Telemetry apply(BaseTelemetry bt) { Preconditions.checkNotNull(bt); PageViewTelemetry t = (PageViewTelemetry) bt; final Event.Builder eb = Event.newBuilder() .setVer(t.getVer()); if (t.getName() != null) eb.setName(t.getName()); if (t.getProperties() != null) eb.putAllProperties(t.getProperties()); if (t.getMetrics() != null) eb.putAllMeasurements(t.getMetrics()); final PageView.Builder pvb = PageView.newBuilder() .setEvent(eb); if (t.getUrlString() != null) pvb.setUrl(t.getUrlString()); if (t.getDurationObject() != null) pvb.setDuration(transformDuration(t.getDurationObject())); return telemetryBuilderWithStandardFields(t).setPageView(pvb).build(); } });
public Runnable getTrackPageView_Full() { PageViewTelemetry pvt = new PageViewTelemetry("AiTestPageView2"); pvt.setDuration(1011L); pvt.setUrl(URI.create("some-host.somewhere/fake/path/elements/AiTestPageView2.html")); for (Entry<String, String> entry : getPropertyMapForMethod("PageView").entrySet()) { pvt.getProperties().put(entry.getKey(), entry.getValue()); } for (Entry<String, Double> entry : getMetricMapForMethod("PageView").entrySet()) { pvt.getMetrics().put(entry.getKey(), entry.getValue()); } return customCases.getTrackPageView(pvt); }
@Override public boolean process(Telemetry telemetry) { if (telemetry == null) { return true; } if (!(telemetry instanceof PageViewTelemetry)) { return true; } PageViewTelemetry asPVT = (PageViewTelemetry) telemetry; URI uri = asPVT.getUri(); if (uri == null) { return true; } else { String uriPath = uri.toString(); for (String notNeededUri : notNeededUrls) { if (uriPath.contains(notNeededUri)) { return false; } } } if (notNeededNames.contains(asPVT.getName())) { return false; } long pvtDuration = asPVT.getDuration(); if (durationThresholdInMS <= pvtDuration) { return true; } return false; }
PageViewTelemetry pvt = new PageViewTelemetry(name); pvt.getContext().setInstrumentationKey(iKey); testCases.add(new Object[]{ "PageView, simple", .setPageView(PageView.newBuilder() .setEvent(Event.newBuilder() .setVer(pvt.getVer()) .setName(name)) .setDuration(LocalForwarderModelTransformer.transformDuration(pvt.getDurationObject())) ).build() }); pvt = new PageViewTelemetry(name); pvt.getContext().setInstrumentationKey(iKey); pvt.getProperties().putAll(props); pvt.getMetrics().putAll(metrics); String urlString = "http://fake.com/why/is/this/uri?clue=false"; pvt.setUrl(new URI(urlString)); pvt.setDuration(665544L); testCases.add(new Object[]{ "PageView, with all fields", .setPageView(PageView.newBuilder() .setEvent(Event.newBuilder() .setVer(pvt.getVer()) .setName(name) .putAllMeasurements(metrics) .putAllProperties(props)
/** * Sends a page view record to Application Insights. Appears in "page views" in Search and Analytics, * and contributes to metric charts such as Page View Load Time. @param name The name of the page. */ public void trackPageView(String name) { // Avoid creation of data if not needed if (isDisabled()) { return; } if (name == null) { name = ""; } Telemetry telemetry = new PageViewTelemetry(name); track(telemetry); }
@Test public void testSetDuration() throws Exception { PageViewTelemetryFilter tested = new PageViewTelemetryFilter(); tested.setDurationThresholdInMS("1000"); PageViewTelemetry pvt = new PageViewTelemetry(); pvt.setUrl(new URI("http://www.microsoft.com/")); pvt.setDuration(1000); boolean result = tested.process(pvt); Assert.assertTrue(result); pvt.setDuration(1001); result = tested.process(pvt); Assert.assertTrue(result); pvt.setDuration(999); result = tested.process(pvt); Assert.assertFalse(result); }
@Test public void testSetName() { PageViewTelemetry telemetry = new PageViewTelemetry("MockName"); telemetry.setName("MockName1"); assertEquals("MockName1", telemetry.getName()); }
@Test public void testSetDuration() { PageViewTelemetry telemetry = new PageViewTelemetry("MockName"); telemetry.setDuration(2001); assertEquals(2001, telemetry.getDuration()); }
@Test public void testSetUri() throws URISyntaxException { PageViewTelemetry telemetry = new PageViewTelemetry(); URI uri = new URI("http://microsoft.com/"); telemetry.setUrl(uri); assertEquals(telemetry.getUri(), uri); } }
@Test public void testSetNotNeededNames() throws Throwable { PageViewTelemetryFilter tested = new PageViewTelemetryFilter(); tested.setNotNeededNames("1, 2 , 3,4"); PageViewTelemetry pvt = new PageViewTelemetry(); pvt.setUrl(new URI("http://www.microsoft.com/")); for (int i = 1; i < 5; ++i) { pvt.setName(String.valueOf(i)); boolean result = tested.process(pvt); Assert.assertFalse(result); } }
@Test public void testSetNotNeededUrls() throws Throwable { PageViewTelemetryFilter tested = new PageViewTelemetryFilter(); tested.setNotNeededUrls("url1, url2/2, url3,url4"); PageViewTelemetry pvt = new PageViewTelemetry(); pvt.setUrl(new URI("http://wwww.url1.com/asdf")); boolean result = tested.process(pvt); Assert.assertFalse(result); pvt.setUrl(new URI("http://www.aaa.com/asdf/url2/2/a")); result = tested.process(pvt); Assert.assertFalse(result); pvt.setUrl(new URI("http://www.aaa.com/asdf/url32/2/a")); result = tested.process(pvt); Assert.assertFalse(result); pvt.setUrl(new URI("http://www.aaa.com/asdf/url4/2/a")); result = tested.process(pvt); Assert.assertFalse(result); pvt.setUrl(new URI("http://www.aaa.com/asdf/url5/2/a")); result = tested.process(pvt); Assert.assertTrue(result); }
@Override @Deprecated protected void additionalSanitize() { data.setName(Sanitizer.sanitizeName(data.getName())); Sanitizer.sanitizeMeasurements(this.getMetrics()); Sanitizer.sanitizeUri(data.getUrl()); }
/** * Initializes a new instance of the class with the specified 'pageName' * @param pageName The name of page to track. */ public PageViewTelemetry(String pageName) { this(); setName(pageName); }
@Test public void testTrackPageViewWithPageViewTelemetry() { PageViewTelemetry telemetry = new PageViewTelemetry("PageName"); client.trackPageView(telemetry); verifyAndGetLastEventSent(); }
@Test public void testSetBadDuration() throws Exception { PageViewTelemetryFilter tested = new PageViewTelemetryFilter(); tested.setDurationThresholdInMS("1000"); PageViewTelemetry pvt = new PageViewTelemetry(); pvt.setUrl(new URI("http://www.microsoft.com/")); pvt.setDuration(1000); boolean result = tested.process(pvt); Assert.assertTrue(result); pvt.setDuration(1001); result = tested.process(pvt); Assert.assertTrue(result); pvt.setDuration(999); result = tested.process(pvt); Assert.assertFalse(result); } }
@Test public void testEmptyCtor() { PageViewTelemetry telemetry = new PageViewTelemetry(); assertNull(telemetry.getName()); assertNull(telemetry.getUri()); assertTrue(telemetry.getMetrics().isEmpty()); assertTrue(telemetry.getProperties().isEmpty()); assertEquals(0, telemetry.getDuration()); }
@Test public void telemetryItemHasSamplingPercentageSet() { List<Telemetry> telemetryList = new ArrayList<Telemetry>(); FixedRateSamplingTelemetryProcessor processor = new FixedRateSamplingTelemetryProcessor(); processor.setSamplingPercentage("20.0"); telemetryList.add(new RequestTelemetry()); telemetryList.add(new PageViewTelemetry()); for (Telemetry t : telemetryList) { processor.process(t); } Assert.assertEquals(20.0, ((SupportSampling)telemetryList.get(0)).getSamplingPercentage(), 0); }
@Test public void testNullSources() { SyntheticSourceFilter tested = new SyntheticSourceFilter(); boolean result = tested.process(new PageViewTelemetry()); assertTrue(result); }
@Test public void testEmptySources() throws Throwable { SyntheticSourceFilter tested = new SyntheticSourceFilter(); boolean result = tested.process(new PageViewTelemetry()); assertTrue(result); }