2017-08-11 70 views
0

我使用「計劃任務」在ML 8.0.6上使用Xquery查詢來計劃數據提取。Marklogic 8:計劃任務不會啓動並且沒有日誌

我的Xquery查詢(此查詢的工作,如果我複製/粘貼在ML Web控制檯,我得到的AWS S3提供的文件):

xdmp:save("s3://XX.csv",let $nl := "
" 

return 
document { 

for $book in collection("books")/books 
return (root($book)/bookId||","|| 
     $optin/updatedDate||$nl 
) 
}) 

我的計劃任務:

  • 任務啓用:是
  • 任務路徑:/home/bob/extraction.xqy
  • 任務根:/
  • 任務類型:每小時
  • 任務週期:1個
  • 任務開始時間:8過去的小時
  • 任務數據庫:MYDATABASE
  • 任務模塊:文件系統
  • 任務用戶:admin
  • 任務宿主:XX
  • 任務優先級:更高

不幸的是,我的腳本沒有執行,因爲在AWS S3上沒有生成文件(st使用orage),我沒有任何日誌。

任何想法到: 1 /在調度程序任務中調試作業? 2 /查看在預計時間運行的作業?

謝謝, 羅曼。

回答

3

首先,我會試着看看ErrorLog.txt,因爲它可能會告訴你在哪裏尋找問題。

xdmp:filesystem-file(concat(xdmp:data-directory(),"/","Logs","/","ErrorLog.txt")) 
  • 哪裏是腳本位於邏輯:它是否被上傳到內容數據庫,數據庫模塊,或./MarkLogic/Modules目錄?
  • 如果這是一個集羣,是否指定了它運行的主機?如果是,並使用文件系統模塊,則確保腳本存在於指定主機的./MarkLogic/Modules目錄中。 Inf並且使用文件系統模塊,然後確保該腳本存在於./MarkLogic/Modules目錄中的全部羣集的主機中。

至於看到了工作的運行,你可以檢查http://servername:8002/dashboard/並採取看看Query Execution選項卡中顯示正在運行的進程,或者你可以通過看看得到進程的快照狀態頁面任務服務器(配置>組> [組名稱]>任務服務器:狀態並單擊顯示更多按鈕)

+0

謝謝邁克爾。不確定要了解您對劇本位置的看法。我把腳本放在用戶的家裏:/home/toto/test.xqy是 - 可以,或者我必須把它放在ML文件夾中?如果是,我怎樣才能在任務類型/任務根目錄中指定文件的路徑?在文檔中不是很明確 –

+0

我重複檢查過,沒有錯誤,但沒有生成任何代碼...... –

+1

要通過任務管理器執行腳本,腳本或者需要位於系統的其中一個數據庫中,或者位於系統中的Modules文件夾中正在調用它的主機上的MarkLogic安裝目錄。 –