我正在尝试使用java在cassandra中使用QueryBuilder和preparedStatement来跟踪查询。
preparedStatement = new SimplePreparedStatementCreator(String.valueOf(QueryBuilder.selectFrom(Student).columns(SELECT_FIELDS.whereColumn(Marks).isEqualTo(QueryBuilder.bindMarker(Marks)))).createPreparedStatement(session);
如何使用preparedStatement启用此查询的跟踪?有人可以推荐我吗?
确保您的项目包含 Java Cassandra 驱动程序所需的依赖项,以访问上面演示的必要类和方法。此外,请验证 Cassandra 集群上的服务器级别是否启用了查询跟踪。请注意,如果您使用的 Java Cassandra 驱动程序与本示例中假设的驱动程序不同,则启用跟踪的方法可能会有所不同 // 启用查询跟踪 session.getContext().setTracing(true);
// 创建准备好的语句 PreparedStatementprepareStatement=session.prepare(“这里是您的CQL查询”);
//执行查询 BoundStatementboundStatement = preparedStatement.bind(/* 此处绑定参数*/); ResultSet resultSet = session.execute(boundStatement);
//(可选)检索并打印跟踪信息 if (session.getContext().getTracingSession() != null) { String traceId = session.getContext().getTracingSession().getTraceId().toString(); System.out.println("跟踪 ID:" + traceId); // 或者,您可以检索并打印其他跟踪信息,例如事件 }