我有一个gremlin-groovy脚本,它遍历一个非常嘈杂的数据库。有很多情况下会丢失边缘或属性。当我假设一个边或属性存在,并且没有抛出异常时,我会得到一个非常简单的输出,如下所示:
javax.script.ScriptException: java.util.IllegalFormatConversionException: d != java.lang.String我希望当脚本遇到致命异常时,就像上面那样,它提供一个堆栈转储或至少一个行号,这样我就可以调试它发生的地方,类似于java如何打印致命异常的完整堆栈跟踪。
对如何获得更好的转储有什么建议吗?
发布于 2012-02-15 08:10:32
为此,我建议使用Gremlin终端。
gremlin$ ./gremlin.sh
\,,,/
(o o)
-----oOOo-(_)-oOOo-----
gremlin> a bad thing
No such property: bad for class: groovysh_evaluate
Display stack trace? [yN] y
groovy.lang.MissingPropertyException: No such property: bad for class: groovysh_evaluate
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:50)如果你没有这种奢侈(例如通过REST服务器),那么你可能想在你的遍历中放置一些智能的“println”。
my.long.traversal.sideEffect{println 'I am here'}.is.very.longhttps://stackoverflow.com/questions/9271283
复制相似问题