2012-09-19 46 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*] :) 
)))