簡體   English   中英

SharePoint自定義計時器作業執行問題

[英]SharePoint custom timer job execution issue

我們已經在Visual Studio 2012中為SharePoint 2013開發了一個計時器作業。該作業計划在上午7點到上午7:15之間運行。 我們已經使用PowerShell部署了計時器作業。 在代碼中,我們在計時器execute方法的開頭添加了PortalLog.LogString以將消息記錄在SharePoint錯誤日志中。

在“網站集”下,我們可以看到它已部署並激活。 在VS中,計時器作業的范圍設置為“站點”。 我們可以看到計時器作業,該計時器作業部署在中央管理員的審閱作業定義中。 但是,無法在計划的作業中看到它。 當我們通過查看作業定義來編輯計時器作業並單擊“立即運行”時,在使用PortalLog.LogString編寫的錯誤日志中,我們看不到任何消息。

可能是什么問題?

抱歉-評論太久了。 稍后將編輯以代表答案。

您必須在此處說明很多事情: “在網站集下,我們可以看到它已部署並激活” -您的意思是您具有網站集功能來部署計時器作業 計時器作業是在服務器場級別安裝的,因此它應該是webapp /服務器場功能。

PortalLog.LogString僅供內部使用: PortalLog.LogString方法

您是否嘗試調試計時器作業? 由於它已正確部署到“作業定義”,因此您可以單擊“立即運行”,到目前為止,一切看起來都不錯。 您只需附加到SPTimerV4 (SharePoint計時器作業),即可在解決方案中命中斷點。

您應該使用不同的日志記錄,例如此處所述: https : //sharepoint.stackexchange.com/questions/55381/timerjobs-and-uls,並在等待任何日志神奇顯示之前: 調試!

在我看來,有兩個問題:

  1. 您應該使用其他方式記錄LoggingService應該是首選方式。 使用WriteEvent寫入EventLog或使用WriteTrace寫入ULS日志。
  2. 正在運行的工作。 確保所有Web服務器上的Owstimer.exe服務都已重新啟動(可以通過此powershell腳本完成 )。 我希望您已經在Powershell腳本或功能接收器中正確安排了工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM