Search in sources :

Example 16 with DatastoreHelper

use of com.newrelic.agent.introspec.DatastoreHelper in project newrelic-java-agent by newrelic.

the class MariadbNoInstrumentationTest method testSelect.

@Test
public void testSelect() {
    // Given
    Introspector introspector = InstrumentationTestRunner.getIntrospector();
    DatastoreHelper helper = new DatastoreHelper("MariaDB");
    // When
    R2dbcTestUtils.basicRequests(connection);
    // Then
    assertEquals(1, introspector.getFinishedTransactionCount(1000));
    assertEquals(1, introspector.getTransactionNames().size());
    String transactionName = introspector.getTransactionNames().stream().findFirst().orElse("");
    helper.assertScopedStatementMetricCount(transactionName, "INSERT", "USERS", 0);
    helper.assertScopedStatementMetricCount(transactionName, "SELECT", "USERS", 0);
    helper.assertScopedStatementMetricCount(transactionName, "UPDATE", "USERS", 0);
    helper.assertScopedStatementMetricCount(transactionName, "DELETE", "USERS", 0);
}
Also used : Introspector(com.newrelic.agent.introspec.Introspector) DatastoreHelper(com.newrelic.agent.introspec.DatastoreHelper) Test(org.junit.Test)

Example 17 with DatastoreHelper

use of com.newrelic.agent.introspec.DatastoreHelper in project newrelic-java-agent by newrelic.

the class CassandraTest method testBatchStatementInsideSimpleStatement.

@Test
public void testBatchStatementInsideSimpleStatement() {
    demoBatchStatementInsideSimpleStatement();
    waitForSegmentEnd();
    DatastoreHelper helper = new DatastoreHelper(CASSANDRA_PRODUCT);
    helper.assertAggregateMetrics();
    helper.assertUnscopedOperationMetricCount("BATCH", 1);
    Collection<String> transactionNames = InstrumentationTestRunner.getIntrospector().getTransactionNames();
    assertEquals(1, transactionNames.size());
    String txName = transactionNames.iterator().next();
    helper.assertScopedOperationMetricCount(txName, "BATCH", 1);
    Collection<TransactionTrace> traces = InstrumentationTestRunner.getIntrospector().getTransactionTracesForTransaction(txName);
    assertEquals(1, traces.size());
    TransactionTrace trace = Iterables.getFirst(traces, null);
    assertNotNull(trace);
    assertBatchStatementInsideSimpleStatementTraceSegmentAttributes(trace);
}
Also used : TransactionTrace(com.newrelic.agent.introspec.TransactionTrace) DatastoreHelper(com.newrelic.agent.introspec.DatastoreHelper) Java16IncompatibleTest(com.newrelic.test.marker.Java16IncompatibleTest) Java17IncompatibleTest(com.newrelic.test.marker.Java17IncompatibleTest) Test(org.junit.Test) Java7IncompatibleTest(com.newrelic.test.marker.Java7IncompatibleTest)

Example 18 with DatastoreHelper

use of com.newrelic.agent.introspec.DatastoreHelper in project newrelic-java-agent by newrelic.

the class CassandraTest method testAddListener.

@Test
public void testAddListener() throws Exception {
    ResultSet rs = addListernerTest().get();
    ExecutionInfo executionInfo = rs.getExecutionInfo();
    QueryTrace queryTrace = executionInfo.getQueryTrace();
    assertEquals(1, InstrumentationTestRunner.getIntrospector().getFinishedTransactionCount(30000));
    DatastoreHelper help = new DatastoreHelper(CASSANDRA_PRODUCT);
    help.assertAggregateMetrics();
    help.assertUnscopedOperationMetricCount("BATCH", 1);
    Collection<String> transactionNames = InstrumentationTestRunner.getIntrospector().getTransactionNames();
    String Txname = transactionNames.iterator().next();
    help.assertScopedOperationMetricCount(Txname, "BATCH", 1);
    Float databaseTime = MetricsHelper.getScopedMetricExclusiveTimeInSec(Txname, help.getOperationMetricName("BATCH"));
    Double timeDiff = ((databaseTime * 1000.0) - ((queryTrace.getDurationMicros()) / 1000.0));
    assertTrue("Database time includes the user callbacks.", timeDiff < 15);
    assertTrue("No time was captured for database.", databaseTime > 0);
    Collection<TransactionTrace> traces = InstrumentationTestRunner.getIntrospector().getTransactionTracesForTransaction(Txname);
    assertEquals(1, traces.size());
    TransactionTrace trace = Iterables.getFirst(traces, null);
    assertNotNull(trace);
    assertListenerTraceSegmentAttributes(trace);
}
Also used : ResultSet(com.datastax.driver.core.ResultSet) TransactionTrace(com.newrelic.agent.introspec.TransactionTrace) ExecutionInfo(com.datastax.driver.core.ExecutionInfo) QueryTrace(com.datastax.driver.core.QueryTrace) DatastoreHelper(com.newrelic.agent.introspec.DatastoreHelper) Java16IncompatibleTest(com.newrelic.test.marker.Java16IncompatibleTest) Java17IncompatibleTest(com.newrelic.test.marker.Java17IncompatibleTest) Test(org.junit.Test) Java7IncompatibleTest(com.newrelic.test.marker.Java7IncompatibleTest)

Example 19 with DatastoreHelper

use of com.newrelic.agent.introspec.DatastoreHelper in project newrelic-java-agent by newrelic.

the class CassandraTest method testBasicWrapped.

@Test
public void testBasicWrapped() {
    demoBasicWrapped();
    assertEquals(1, InstrumentationTestRunner.getIntrospector().getFinishedTransactionCount(1000));
    Collection<String> transactionNames = InstrumentationTestRunner.getIntrospector().getTransactionNames();
    assertEquals(1, transactionNames.size());
    String txName = transactionNames.iterator().next();
    DatastoreHelper helper = new DatastoreHelper(CASSANDRA_PRODUCT);
    helper.assertScopedStatementMetricCount(txName, "INSERT", "users", 1);
    helper.assertScopedStatementMetricCount(txName, "SELECT", "users", 3);
    helper.assertScopedStatementMetricCount(txName, "UPDATE", "users", 1);
    helper.assertScopedStatementMetricCount(txName, "DELETE", "users", 1);
    helper.assertAggregateMetrics();
    helper.assertUnscopedOperationMetricCount("INSERT", 1);
    helper.assertUnscopedOperationMetricCount("SELECT", 3);
    helper.assertUnscopedOperationMetricCount("UPDATE", 1);
    helper.assertUnscopedOperationMetricCount("DELETE", 1);
    helper.assertUnscopedStatementMetricCount("INSERT", "users", 1);
    helper.assertUnscopedStatementMetricCount("SELECT", "users", 3);
    helper.assertUnscopedStatementMetricCount("UPDATE", "users", 1);
    helper.assertUnscopedStatementMetricCount("DELETE", "users", 1);
    Collection<TransactionTrace> traces = InstrumentationTestRunner.getIntrospector().getTransactionTracesForTransaction(txName);
    assertEquals(1, traces.size());
    TransactionTrace trace = Iterables.getFirst(traces, null);
    assertNotNull(trace);
    assertBasicTraceSegmentAttributes(trace);
}
Also used : TransactionTrace(com.newrelic.agent.introspec.TransactionTrace) DatastoreHelper(com.newrelic.agent.introspec.DatastoreHelper) Java16IncompatibleTest(com.newrelic.test.marker.Java16IncompatibleTest) Java17IncompatibleTest(com.newrelic.test.marker.Java17IncompatibleTest) Test(org.junit.Test) Java7IncompatibleTest(com.newrelic.test.marker.Java7IncompatibleTest)

Example 20 with DatastoreHelper

use of com.newrelic.agent.introspec.DatastoreHelper in project newrelic-java-agent by newrelic.

the class CassandraTest method testBatchStatement.

@Test
public void testBatchStatement() {
    demoBatchStatement();
    waitForSegmentEnd();
    DatastoreHelper helper = new DatastoreHelper(CASSANDRA_PRODUCT);
    helper.assertAggregateMetrics();
    helper.assertUnscopedOperationMetricCount("BATCH", 1);
    Collection<String> transactionNames = InstrumentationTestRunner.getIntrospector().getTransactionNames();
    assertEquals(1, transactionNames.size());
    String txName = transactionNames.iterator().next();
    helper.assertScopedOperationMetricCount(txName, "BATCH", 1);
    Collection<TransactionTrace> traces = InstrumentationTestRunner.getIntrospector().getTransactionTracesForTransaction(txName);
    assertEquals(1, traces.size());
    TransactionTrace trace = Iterables.getFirst(traces, null);
    assertNotNull(trace);
    assertBatchStatementTraceSegmentAttributes(trace);
}
Also used : TransactionTrace(com.newrelic.agent.introspec.TransactionTrace) DatastoreHelper(com.newrelic.agent.introspec.DatastoreHelper) Java16IncompatibleTest(com.newrelic.test.marker.Java16IncompatibleTest) Java17IncompatibleTest(com.newrelic.test.marker.Java17IncompatibleTest) Test(org.junit.Test) Java7IncompatibleTest(com.newrelic.test.marker.Java7IncompatibleTest)

Aggregations

DatastoreHelper (com.newrelic.agent.introspec.DatastoreHelper)74 Test (org.junit.Test)72 Introspector (com.newrelic.agent.introspec.Introspector)69 Java16IncompatibleTest (com.newrelic.test.marker.Java16IncompatibleTest)11 Java17IncompatibleTest (com.newrelic.test.marker.Java17IncompatibleTest)11 ConnectionString (com.mongodb.ConnectionString)9 Java7IncompatibleTest (com.newrelic.test.marker.Java7IncompatibleTest)8 TransactionTrace (com.newrelic.agent.introspec.TransactionTrace)7 Java10IncompatibleTest (com.newrelic.test.marker.Java10IncompatibleTest)5 Java11IncompatibleTest (com.newrelic.test.marker.Java11IncompatibleTest)5 Java12IncompatibleTest (com.newrelic.test.marker.Java12IncompatibleTest)5 Java13IncompatibleTest (com.newrelic.test.marker.Java13IncompatibleTest)5 Java14IncompatibleTest (com.newrelic.test.marker.Java14IncompatibleTest)5 Java15IncompatibleTest (com.newrelic.test.marker.Java15IncompatibleTest)5 Java18IncompatibleTest (com.newrelic.test.marker.Java18IncompatibleTest)5 Java9IncompatibleTest (com.newrelic.test.marker.Java9IncompatibleTest)5 Ignore (org.junit.Ignore)3 Data (com.nr.lettuce5.instrumentation.helper.Data)2 Data (com.nr.lettuce6.instrumentation.helper.Data)2 AttributeValue (com.amazonaws.services.dynamodbv2.model.AttributeValue)1