Search in sources :

Example 6 with TracerFactory

use of com.newrelic.agent.tracers.TracerFactory in project newrelic-java-agent by newrelic.

the class TransactionStateImplTest method tracerMetricName_NullCustom.

@Test
public void tracerMetricName_NullCustom() throws Exception {
    Tracer rootTracer = createRootTracer();
    Transaction tx = Transaction.getTransaction();
    TracerFactory tracerFactory = Mockito.mock(TracerFactory.class, new Returns(rootTracer));
    tx.getTransactionState().getTracer(tx, tracerFactory, new ClassMethodSignature("com.newrelic.test.Foo", "makeItSo", "()"), null, (Object[]) null);
    assertEquals(rootTracer, tx.getTransactionActivity().getRootTracer());
    ClassMethodSignature sig = new ClassMethodSignature("com.test.Dude", "dude2", "()V");
    Tracer tracer = tx.getTransactionState().getTracer(tx, null, sig, null, getTracerFlags(false, false, true));
    assertEquals(tracer, tx.getTransactionActivity().getLastTracer());
    assertEquals("Custom/com.test.Dude/dude2", tracer.getMetricName());
}
Also used : Returns(org.mockito.internal.stubbing.answers.Returns) ClassMethodSignature(com.newrelic.agent.tracers.ClassMethodSignature) DefaultTracer(com.newrelic.agent.tracers.DefaultTracer) UltraLightTracer(com.newrelic.agent.tracers.UltraLightTracer) Tracer(com.newrelic.agent.tracers.Tracer) OtherRootTracer(com.newrelic.agent.tracers.OtherRootTracer) TracerFactory(com.newrelic.agent.tracers.TracerFactory) Test(org.junit.Test)

Example 7 with TracerFactory

use of com.newrelic.agent.tracers.TracerFactory in project newrelic-java-agent by newrelic.

the class TransactionStateImplTest method finish.

@Test
public void finish() throws Exception {
    Tracer rootTracer = createRootTracer();
    Transaction tx = Transaction.getTransaction();
    TracerFactory tracerFactory = Mockito.mock(TracerFactory.class, new Returns(rootTracer));
    tx.getTransactionState().getTracer(tx, tracerFactory, null, null, (Object[]) null);
    Assert.assertTrue(tx.getTransactionState().finish(tx, rootTracer));
}
Also used : Returns(org.mockito.internal.stubbing.answers.Returns) DefaultTracer(com.newrelic.agent.tracers.DefaultTracer) UltraLightTracer(com.newrelic.agent.tracers.UltraLightTracer) Tracer(com.newrelic.agent.tracers.Tracer) OtherRootTracer(com.newrelic.agent.tracers.OtherRootTracer) TracerFactory(com.newrelic.agent.tracers.TracerFactory) Test(org.junit.Test)

Example 8 with TracerFactory

use of com.newrelic.agent.tracers.TracerFactory in project newrelic-java-agent by newrelic.

the class TransactionStateImplTest method getTracer.

@Test
public void getTracer() throws Exception {
    Tracer rootTracer = createRootTracer();
    Transaction tx = Transaction.getTransaction();
    TracerFactory tracerFactory = Mockito.mock(TracerFactory.class, new Returns(rootTracer));
    tx.getTransactionState().getTracer(tx, tracerFactory, null, null, (Object[]) null);
    assertEquals(rootTracer, tx.getTransactionActivity().getRootTracer());
    Tracer tracer = createTracer();
    tracerFactory = Mockito.mock(TracerFactory.class, new Returns(tracer));
    tx.getTransactionState().getTracer(tx, tracerFactory, null, null, (Object[]) null);
    assertEquals(tracer, tx.getTransactionActivity().getLastTracer());
}
Also used : Returns(org.mockito.internal.stubbing.answers.Returns) DefaultTracer(com.newrelic.agent.tracers.DefaultTracer) UltraLightTracer(com.newrelic.agent.tracers.UltraLightTracer) Tracer(com.newrelic.agent.tracers.Tracer) OtherRootTracer(com.newrelic.agent.tracers.OtherRootTracer) TracerFactory(com.newrelic.agent.tracers.TracerFactory) Test(org.junit.Test)

Example 9 with TracerFactory

use of com.newrelic.agent.tracers.TracerFactory in project newrelic-java-agent by newrelic.

the class TransactionStateImplTest method tracerGeneration_segmentClampInPlace.

@Test
public void tracerGeneration_segmentClampInPlace() throws Exception {
    Tracer rootTracer = createRootTracer();
    Transaction tx = Transaction.getTransaction();
    TransactionCounts transactionCounts = tx.getTransactionCounts();
    transactionCounts.addTracers(3001);
    TracerFactory tracerFactory = Mockito.mock(TracerFactory.class, new Returns(rootTracer));
    ClassMethodSignature sig = new ClassMethodSignature("com.test.Dude", "dude1", "()V");
    tx.getTransactionState().getTracer(tx, tracerFactory, sig, null, (Object[]) null);
    Assert.assertNotNull(tx.getTransactionActivity().getRootTracer());
    Tracer tracer = tx.getTransactionState().getTracer(tx, null, sig, null, simpleFlags);
    assertNotEquals(UltraLightTracer.class, tracer.getClass());
    assertEquals("Java/com.test.Dude/dude1", tracer.getTransactionSegmentName());
    Tracer sqlTracer = tx.getTransactionState().getSqlTracer(tx, null, sig, null, simpleFlags);
    assertEquals(UltraLightTracer.class, sqlTracer.getClass());
    assertEquals("Clamped/com.test.Dude/dude1", sqlTracer.getTransactionSegmentName());
}
Also used : Returns(org.mockito.internal.stubbing.answers.Returns) ClassMethodSignature(com.newrelic.agent.tracers.ClassMethodSignature) DefaultTracer(com.newrelic.agent.tracers.DefaultTracer) UltraLightTracer(com.newrelic.agent.tracers.UltraLightTracer) Tracer(com.newrelic.agent.tracers.Tracer) OtherRootTracer(com.newrelic.agent.tracers.OtherRootTracer) TransactionCounts(com.newrelic.agent.transaction.TransactionCounts) TracerFactory(com.newrelic.agent.tracers.TracerFactory) Test(org.junit.Test)

Example 10 with TracerFactory

use of com.newrelic.agent.tracers.TracerFactory in project newrelic-java-agent by newrelic.

the class YmlExtensionPointCutConverter method getTracerFactoryName.

private static String getTracerFactoryName(Map attrs, String prefix, boolean dispatcher, Object metricNameFormat, ClassLoader loader) {
    String tracerFactoryNameString = null;
    Object tracerFactoryName = attrs.get(TRACER_FACTOR_KEY);
    if (tracerFactoryName != null) {
        try {
            TracerFactory factory = getTracerFactory(tracerFactoryName.toString(), loader, new TracerFactoryConfiguration(prefix, dispatcher, metricNameFormat, attrs));
            tracerFactoryNameString = tracerFactoryName.toString();
            ServiceFactory.getTracerService().registerTracerFactory(tracerFactoryNameString, factory);
        } catch (TracerFactoryException ex) {
            throw new RuntimeException("Unable to create tracer factory " + tracerFactoryName, ex);
        }
    }
    return tracerFactoryNameString;
}
Also used : TracerFactoryException(com.newrelic.agent.TracerFactoryException) MethodTracerFactory(com.newrelic.api.agent.MethodTracerFactory) TracerFactory(com.newrelic.agent.tracers.TracerFactory)

Aggregations

TracerFactory (com.newrelic.agent.tracers.TracerFactory)10 DefaultTracer (com.newrelic.agent.tracers.DefaultTracer)8 OtherRootTracer (com.newrelic.agent.tracers.OtherRootTracer)8 Tracer (com.newrelic.agent.tracers.Tracer)8 UltraLightTracer (com.newrelic.agent.tracers.UltraLightTracer)8 Test (org.junit.Test)8 Returns (org.mockito.internal.stubbing.answers.Returns)8 ClassMethodSignature (com.newrelic.agent.tracers.ClassMethodSignature)7 TransactionCounts (com.newrelic.agent.transaction.TransactionCounts)2 TracerFactoryException (com.newrelic.agent.TracerFactoryException)1 EntryInvocationHandler (com.newrelic.agent.tracers.EntryInvocationHandler)1 MethodTracerFactory (com.newrelic.api.agent.MethodTracerFactory)1