use of co.elastic.apm.impl.transaction.Db in project apm-agent-java by elastic.
the class ApmJdbcEventListenerTest method testJdbcSpan.
@Test
void testJdbcSpan() throws SQLException {
PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM ELASTIC_APM WHERE FOO=$1");
preparedStatement.setInt(1, 1);
ResultSet resultSet = preparedStatement.executeQuery();
assertThat(resultSet.next()).isTrue();
assertThat(resultSet.getInt("foo")).isEqualTo(1);
assertThat(resultSet.getString("BAR")).isEqualTo("APM");
assertThat(transaction.getSpans()).hasSize(1);
Span jdbcSpan = transaction.getSpans().get(0);
assertThat(jdbcSpan.getName()).isEqualTo("SELECT");
assertThat(jdbcSpan.getType()).isEqualToIgnoringCase("db.h2.sql");
Db db = jdbcSpan.getContext().getDb();
assertThat(db.getStatement()).isEqualTo("SELECT * FROM ELASTIC_APM WHERE FOO=$1");
assertThat(db.getUser()).isEqualToIgnoringCase("user");
assertThat(db.getType()).isEqualToIgnoringCase("sql");
}
Aggregations