奇怪的问题。
Marklogic 将截断错误日志中的消息,如下所示:
2012-09-19 10:36:12.130 Notice: _app_test_preview_8000: $finalPath = "/opt/bc/content/binary-content/article/test-single..."
通过使用省略号 (...) 而不是向我显示整个值。
有什么方法可以防止这种情况吗?
奇怪的问题。
Marklogic 将截断错误日志中的消息,如下所示:
2012-09-19 10:36:12.130 Notice: _app_test_preview_8000: $finalPath = "/opt/bc/content/binary-content/article/test-single..."
通过使用省略号 (...) 而不是向我显示整个值。
有什么方法可以防止这种情况吗?
MarkLogic 在记录值信息时,在内部使用 xdmp:describe 将信息记录到 ErrorLog.txt。这是为了防止将完整且非常冗长的值记录到此日志中,并以比实际速度更快的方式增长。
对要调试的变量显式使用 xdmp:log,或使用调试 XQuery 编辑器之一。我相信 Oxygen 和 XQDT 做得很好,还有 XQDebug..
!
我已经习惯做的事情是这样的:
xdmp:log(fn:concat("The $var is: ", xdmp:describe($var)))
当您看到省略号时,您仍然可以使用 xdmp:describe()。取自此处的文档:
(: 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*] :)
)))