使用 Spring Session for Pivotal GemFire 时如何在 GemFire Pulse/Gfsh 中查看会话属性?

How to see session attributes in GemFire Pulse/Gfsh when using Spring Session for Pivotal GemFire?

我们能够通过 Spring 会话管理 save/retrieve 数据 to/from GemFire。

     session.getAttribute(sessionKey)    // session is from gemfire.

在 GemFire Pulse 中,我们可以使用查询查看会话 ID...

     select * from /regionName.keySet 

我们如何查看针对特定会话 ID 存储的属性和值?

简短的回答是"you can't",至少不使用纯GemFire API,其中包括gfshPULSE and/or 直接OQL 通过 QueryService 执行。

但是,您可以使用 Spring Repository 抽象以编程方式实现此用例;具体通过 FindByIndexNameSessionRepositorySpring Session for Apache Geode/Pivotal GemFire 已经支持。

希望对您有所帮助。

嗯,这并不完全正确。

可以使用精心设计的 OQL 查询语句在 GfshPulse 的 DataBrowser 工具(扩展名)。

当使用 Spring Session for Apache Geode/Pivotal GemFire (SSDG) 时,您可以使用以下 OQL queries 检查 Session(例如 HttpSession)。

你必须注意,某些OQL查询,取决于序列化格式,可能会导致你的应用程序域对象,甚至SSDG的Session对象被反序列化,在这种情况下,你需要将SSDG,所有SSDG的存储在服务器类路径 Session 中的对象的依赖项(例如核心 Spring 框架)和您的应用程序域对象类型(即 类)。

另请参阅相关的 SO question/answer

希望对您有所帮助!