2012-09-19 44 views
0

奇怪的问题。通过使用省略号(...)Marklogic errorlog截断消息

2012-09-19 10:36:12.130 Notice: _app_test_preview_8000: $finalPath = "/opt/bc/content/binary-content/article/test-single..." 

,并没有表现出我的全部价值:

Marklogic将在错误日志截断的消息,像这样。

有没有办法来防止这种情况?

回答

2

MarkLogic使用xdmp:在内部进行描述,以便在记录值信息时将信息记录到ErrorLog.txt中。这是为了防止整个和非常冗长的值被记录到这个日志中,并且比实际的增长更快。

使用xdmp:明确记录要调试的变量,或者使用其中一个调试XQuery编辑器。我相信Oxygen和XQDT做得不错,而且还有XQDebug ..

HTH!

+0

呀,我通常使用xdmp:跟踪或xdmp:日志,我只是想知道如果我可以是任何懒惰。 – bjo

+0

对于您正在记录的XML变量,请尝试使用xdmp:quote()来显示整个事物而不进行任何截断。 – wst

1

东西我已经习惯于这样做是这样的:

xdmp:log(fn:concat("The $var is: ", xdmp:describe($var))) 

而当你看到你仍然可以使用xdmp省略号:描述()。从文档here摘自:

(: configure these as needed :) 
let $max_sequence_length := 5 
let $max_item_length := 5 

xdmp:log(fn:concat("The $var is: ", 
    xdmp:describe(
    $var, 
    $max_sequence_length, (: [$maxSequenceLength as xs:unsignedInt?] :) 
    $max_item_length  (: [$maxItemLength as xs:unsignedInt*] :) 
)))