Leo Yeh's Blog

SAS 系統管理 (28)

教學目標

初步了解如何解決預存程式伺服器執行預存程式所發生的錯誤問題之方式。

重點概念

一般來說,我們會透過 SAS 部署精靈安裝和設定 SAS 解決方案,然而當順利完成 SAS 部署精靈之後,通常會需要進行 SAS 解決方案的後續設定,常常就會需要透過 SAS 預存程式伺服器執行預存程式,但有時會發生錯誤,此時我們要如何查看錯誤訊息呢?

基本上,當 SAS 預存程式伺服器執行預存程式發生錯誤時會顯示「完成請求,但有錯誤。」的訊息,此時我們只要按下顯示 SAS 日誌就能夠查看錯誤訊息。但有時 SAS 日誌會空白使得我們無法查看錯誤訊息,更進一步解決問題,這時我們就要登入 SAS 伺服器的「C:\SAS\Config\Lev1\SASApp\StoredProcessServer\Logs」資料夾中會有許多「SASApp_STPServer_yyyy-mm-dd_server_xxxxx.log」記錄檔,我們只要找最新的記錄就能夠從中查看錯誤訊息。至於「C:\SAS\Config\Lev1\SASApp\StoredProcessServer\logconfig.xml 」則是設定記錄檔的相關資訊,當設定完成之後請重新啟動「Object Spawner」服務。

接著我們從記錄檔案中搜尋「STPXUTL Execute using file path」關鍵查詢預存程式的 SAS 檔案。接著我們可以透過 SAS 9.4 (Chinese (Traditional)) 開啟 SAS 預存程式檔案執行,就能夠更進一步在「日誌」中查看錯誤訊息,再透過錯誤訊息查看 SAS Code 找出根本原因。例如:當我們發現 Microsoft SQL Server ODBC Driver 11 的 CLI 錯誤問題時,就先透過「ODBC 資料來源管理員 (64 位元)」重新設定驅動程式為「SQL Server」,而非「ODBC Driver 11 for SQL Server」之後,重新啟動「Object Spawner」服務。就能夠解決 Microsoft SQL Server ODBC Driver 11 的 CLI 錯誤問題。

總結我們進行 SAS 解決方案的後續設定,常常就會需要透過 SAS 預存程式伺服器執行預存程式,當有錯誤發生時就能透過查看錯誤訊息的方式一步一步解決問題。

相關資源

⬅️ Go back