我正在使用nodejs的gremlin-javascript模块来查询titan数据库。一切都工作正常,但我想监视实际上击中gremlin服务器的内容以及我可以了解的有关该查询的任何其他内容。我已经检查了titan文件夹中的gremlin-server登录日志文件夹。我在这些日志中找不到任何有用的东西。在这方面的任何帮助都将非常有用。谢谢
对于使用gremlin-javascript的客户端解决方案,目前没有快速简便的方法来登录发送到Gremlin Server的控制台传出查询或协议消息。
你可以:
client.execute()
)的调用,并记录参数。如果使用Node.js v6 +,这可能是ES2015 Proxy
对象的一个很好的用例。这是最安全,非侵入性的方法。client.prototype.messageStream
方法和日志参数。从v2.3.2开始,无论你是在做client.execute()
还是client.stream()
,都会调用这个低级方法。这风险更大,更棘手。./node_modules/gremlin/lib/GremlinClient.js
中编辑源代码并在第405行(prototype.messageStream
定义)之后添加:
console.log('query:', script);
console.log('params:', bindings);
目前有一个open issue about logging of ingoing messages,但这可以开发为包括传出消息(带参数的查询,直到协议消息)。