在哪里可以找到通过gremlin-javascript访问gremlin服务器的查询

问题描述 投票:2回答:1

我正在使用nodejs的gremlin-javascript模块来查询titan数据库。一切都工作正常,但我想监视实际上击中gremlin服务器的内容以及我可以了解的有关该查询的任何其他内容。我已经检查了titan文件夹中的gremlin-server登录日志文件夹。我在这些日志中找不到任何有用的东西。在这方面的任何帮助都将非常有用。谢谢

node.js titan gremlin gremlin-server
1个回答
2
投票

对于使用gremlin-javascript的客户端解决方案,目前没有快速简便的方法来登录发送到Gremlin Server的控制台传出查询或协议消息。

你可以:

  1. 实现自己的函数,包含对您调用的Gremlin客户端方法(通常是client.execute())的调用,并记录参数。如果使用Node.js v6 +,这可能是ES2015 Proxy对象的一个​​很好的用例。这是最安全,非侵入性的方法。
  2. Monkeypatch的client.prototype.messageStream方法和日志参数。从v2.3.2开始,无论你是在做client.execute()还是client.stream(),都会调用这个低级方法。这风险更大,更棘手。
  3. 快速和脏:在./node_modules/gremlin/lib/GremlinClient.js中编辑源代码并在第405行(prototype.messageStream定义)之后添加: console.log('query:', script); console.log('params:', bindings);

目前有一个open issue about logging of ingoing messages,但这可以开发为包括传出消息(带参数的查询,直到协议消息)。

© www.soinside.com 2019 - 2024. All rights reserved.