1

非常にノイズの多いデータベースをトラバースするグレムリン グルーヴィーなスクリプトがあります。エッジやプロパティが欠落しているケースがたくさんあります。エッジまたはプロパティが存在し、例外がスローされないと仮定すると、次のような非常に単純な出力が得られます。

javax.script.ScriptException: java.util.IllegalFormatConversionException: d != java.lang.String

上記のように、スクリプトが致命的な例外に遭遇したときに、スタック ダンプまたは少なくとも行番号を提供して、Java が完全なスタック トレースを出力する方法と同様に、発生した場所をデバッグできるようにしたいと思います。致命的な例外について。

より良いダンプを取得する方法について何か提案はありますか?

4

1 に答える 1

0

これには 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.long
于 2012-02-15T00:10:31.577 に答える