Fix hibernate 6 latest dep test (#8189)
This commit is contained in:
parent
5a14788fc1
commit
a9905a22ca
|
@ -40,7 +40,12 @@ public class SessionFactoryInstrumentation implements TypeInstrumentation {
|
|||
isMethod()
|
||||
.and(namedOneOf("openSession", "openStatelessSession"))
|
||||
.and(takesArguments(0))
|
||||
.and(returns(namedOneOf("org.hibernate.Session", "org.hibernate.StatelessSession"))),
|
||||
.and(
|
||||
returns(
|
||||
namedOneOf(
|
||||
"org.hibernate.Session",
|
||||
"org.hibernate.StatelessSession",
|
||||
"org.hibernate.internal.SessionImpl"))),
|
||||
SessionFactoryInstrumentation.class.getName() + "$SessionFactoryAdvice");
|
||||
}
|
||||
|
||||
|
|
|
@ -85,7 +85,9 @@ public class SessionInstrumentation implements TypeInstrumentation {
|
|||
|
||||
transformer.applyAdviceToMethod(
|
||||
isMethod()
|
||||
.and(returns(implementsInterface(named("org.hibernate.query.CommonQueryContract")))),
|
||||
.and(
|
||||
returns(implementsInterface(named("org.hibernate.query.CommonQueryContract")))
|
||||
.or(named("org.hibernate.query.spi.QueryImplementor"))),
|
||||
SessionInstrumentation.class.getName() + "$GetQueryAdvice");
|
||||
}
|
||||
|
||||
|
@ -150,7 +152,11 @@ public class SessionInstrumentation implements TypeInstrumentation {
|
|||
|
||||
@Advice.OnMethodExit(suppress = Throwable.class)
|
||||
public static void getQuery(
|
||||
@Advice.This SharedSessionContract session, @Advice.Return CommonQueryContract query) {
|
||||
@Advice.This SharedSessionContract session, @Advice.Return Object queryObject) {
|
||||
if (!(queryObject instanceof CommonQueryContract)) {
|
||||
return;
|
||||
}
|
||||
CommonQueryContract query = (CommonQueryContract) queryObject;
|
||||
|
||||
VirtualField<SharedSessionContract, SessionInfo> sessionVirtualField =
|
||||
VirtualField.find(SharedSessionContract.class, SessionInfo.class);
|
||||
|
|
|
@ -153,7 +153,7 @@ class ProcedureCallTest extends AgentInstrumentationSpecification {
|
|||
kind INTERNAL
|
||||
childOf span(0)
|
||||
status ERROR
|
||||
errorEvent(SQLGrammarException, "could not prepare statement")
|
||||
errorEvent(SQLGrammarException, ~/could not prepare statement/)
|
||||
attributes {
|
||||
"hibernate.session_id" {
|
||||
sessionId = it
|
||||
|
|
|
@ -2,6 +2,8 @@ plugins {
|
|||
id("otel.javaagent-testing")
|
||||
}
|
||||
|
||||
val springAgent by configurations.creating
|
||||
|
||||
dependencies {
|
||||
library("org.hibernate:hibernate-core:6.0.0.Final")
|
||||
|
||||
|
@ -14,6 +16,8 @@ dependencies {
|
|||
|
||||
testImplementation("org.hsqldb:hsqldb:2.0.0")
|
||||
testImplementation("org.springframework.data:spring-data-jpa:3.0.0")
|
||||
|
||||
springAgent("org.springframework:spring-instrument:6.0.7")
|
||||
}
|
||||
|
||||
otelJava {
|
||||
|
@ -21,6 +25,8 @@ otelJava {
|
|||
}
|
||||
|
||||
tasks.withType<Test>().configureEach {
|
||||
jvmArgs("-javaagent:" + springAgent.singleFile.absolutePath)
|
||||
|
||||
// TODO run tests both with and without experimental span attributes
|
||||
jvmArgs("-Dotel.instrumentation.hibernate.experimental-span-attributes=true")
|
||||
}
|
||||
|
|
|
@ -141,7 +141,7 @@ class SpringJpaTest extends AgentInstrumentationSpecification {
|
|||
"$SemanticAttributes.DB_NAME" "test"
|
||||
"$SemanticAttributes.DB_USER" "sa"
|
||||
"$SemanticAttributes.DB_CONNECTION_STRING" "hsqldb:mem:"
|
||||
"$SemanticAttributes.DB_STATEMENT" ~/insert into Customer \(.*\) values \(.*, \?, \?\)/
|
||||
"$SemanticAttributes.DB_STATEMENT" ~/insert into Customer \(.*\) values \(.*\)/
|
||||
"$SemanticAttributes.DB_OPERATION" "INSERT"
|
||||
"$SemanticAttributes.DB_SQL_TABLE" "Customer"
|
||||
}
|
||||
|
@ -156,7 +156,7 @@ class SpringJpaTest extends AgentInstrumentationSpecification {
|
|||
"$SemanticAttributes.DB_NAME" "test"
|
||||
"$SemanticAttributes.DB_USER" "sa"
|
||||
"$SemanticAttributes.DB_CONNECTION_STRING" "hsqldb:mem:"
|
||||
"$SemanticAttributes.DB_STATEMENT" ~/insert into Customer \(.*\) values \(.*, \?, \?\)/
|
||||
"$SemanticAttributes.DB_STATEMENT" ~/insert into Customer \(.*\) values \(.*\)/
|
||||
"$SemanticAttributes.DB_OPERATION" "INSERT"
|
||||
"$SemanticAttributes.DB_SQL_TABLE" "Customer"
|
||||
}
|
||||
|
@ -232,7 +232,7 @@ class SpringJpaTest extends AgentInstrumentationSpecification {
|
|||
"$SemanticAttributes.DB_NAME" "test"
|
||||
"$SemanticAttributes.DB_USER" "sa"
|
||||
"$SemanticAttributes.DB_CONNECTION_STRING" "hsqldb:mem:"
|
||||
"$SemanticAttributes.DB_STATEMENT" "update Customer set firstName=?, lastName=? where id=?"
|
||||
"$SemanticAttributes.DB_STATEMENT" ~/update Customer set firstName=\?,(.*)lastName=\? where id=\?/
|
||||
"$SemanticAttributes.DB_OPERATION" "UPDATE"
|
||||
"$SemanticAttributes.DB_SQL_TABLE" "Customer"
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue