2017-03-13 47 views
0

我正在建立一個新的voip系統。該系統是一個星號後端。我有一個python腳本,用於在調用技術支持時驗證客戶數據。當我在通話IVR菜單中觸發腳本時,返回0,腳本實際上不執行。我所做的:astcanary vs python script in asterisk

星號-rx「現在內核停止」

星號-vvvvgc

一旦我做到了,腳本運行,沒有任何問題。我可以瀏覽整個菜單,驗證客戶信息並將呼叫轉移到技術支持擴展。但Icinga表明,astcanary已不再運行,並且對監控顯示爲至關重要。如果我重新啓動星號/電話服務,astcanary顯示正常,但我的腳本不再運行。該腳本再次返回0,並沒有做它應該做的。

有沒有人有任何想法這個衝突似乎是相關的?我已經監視了我的服務器CPU使用情況,但是python腳本沒有閒置高使用率,並且在實際運行時幾乎沒有達到0.5%(我在使用htop觀察進程時)任何想法或想法都會受到歡迎和看待!謝謝。

+0

這是我的測試:我重置了電話服務後殺死astcanary。這是正確的殺害astcanary過程,而不是現在的核心。通過IVR菜單觸發時,我的腳本仍然不會運行。但!當我按照上面所述(asterisk -rx'core stop now',然後星號來啓動服務,然後是asterisk -vvvvgr)時,astcanary不再運行,腳本運行正常。 Astchenary是Icinga仍然唯一的警告。還有什麼會'核心停止'殺死可能會影響我的腳本,我看不到我的日誌或監控? – lnxchix

回答

0

在大多數情況下,此類問題是許可問題。星號星號下的用戶的身份運行,而你likly下其他用戶運行它(根?)

嘗試做

asterisk -rx "core stop now" 
su asterisk -c "asterisk -vvvgc" 

,你會看到錯誤。

+0

該腳本以用戶星號運行。所以,我不確定腳本的權限會不會影響(?)。我以root身份運行這些命令。我可以嘗試一下,讓你知道。 – lnxchix

+0

不需要讓我知道;)SO不適用於調試。調試自己或聘請爲您進行QA和調試的人員。 – arheops

0

在日誌文件上似乎存在權限問題。日誌文件被設置爲所有者root而不是星號。腳本以星號運行,無法將數據寫入.log文件。我得到了一雙額外的眼睛來幫助我解決問題,並且我們發現這是交易。所以它根本不算什麼!整個情況非常奇怪,所以我想看看有沒有人見過。所以你很近,arheops!至少就用戶訪問而言。在執行上述命令時,我還以root身份運行星號。所以我做了sudo -u星號,然後運行了星號-r。

我覺得這是個愚蠢的問題,但它很混亂,不是很明顯的答案!感謝您的答覆! :)

相關問題