2017-03-13 5 views
0

새로운 voip 시스템을 설치하려고합니다. 이 시스템은 Asterisk 백엔드입니다. 기술 지원을 요청할 때 고객 데이터를 확인하는 Python 스크립트가 있습니다. IVR 메뉴 호출에서 스크립트를 트리거하면 리턴 0이 발생하고 스크립트가 실제로 실행되지 않습니다. 내가 그랬어 :astarkary와 별표로 된 python 스크립트

별표 -rx "이제 핵심 정지"

별표 내가 스크립트가 아무런 문제없이 실행, 그랬어되면

-vvvvgc. 전체 메뉴를 통해 고객 정보를 확인하고 기술 지원 확장 프로그램에 전화를 연결할 수 있습니다. 그러나 Icinga는 astcanary가 더 이상 가동되지 않고 있으며 모니터링에 중요한 것으로 보여주고 있습니다. 별표/전화 통신 서비스를 다시 시작하면 astcanary가 정상적으로 표시되지만 내 스크립트는 더 이상 실행되지 않습니다. 스크립트는 다시 한 번 0을 반환하고 예상 한대로 처리하지 않습니다.

누구든지이 충돌과 관련된 것으로 보이는 아이디어가 있습니까? 나는 CPU 사용량에 대한 내 서버를 모니터링했지만 Python 스크립트는 높은 사용량을 유지하면서 실제로 실행될 때 거의 0.5 %를 기록하지 않습니다 (이 작업을 수행 할 때 프로세스를보기 위해 htop을 사용합니다). 어떤 생각이나 아이디어라도 환영받을 것입니다! 감사.

+0

다음은 테스트입니다. 나는 전화 서비스를 재설정 한 후 astcanary를 죽였습니다. 이것은 지금 막 중대한 중지가 아닌 astcanary 프로세스를 죽이는 것입니다. IVR 메뉴를 통해 트리거되면 내 스크립트가 실행되지 않습니다. 그러나! 내가 위에서 언급 한 (별표 -rx 'core stop now'다음에 별표를 사용하여 서비스를 다시 시작하고 별표 -vvvvgr을 실행하면) astcanary가 더 이상 실행되지 않고 스크립트가 제대로 실행됩니다. Astcanary는 Icinga에서 여전히 나타나는 유일한 경고입니다. 그 밖의 무엇이 '로그 중단이나 감시에서 볼 수없는 내 스크립트에 영향을 미칠 수있는'지금 중단시킬 핵심 요소가 무엇입니까? – lnxchix

답변

0

대부분의 경우 이러한 문제는 허가 문제입니다. 당신이 likly 다른 사용자로 실행하면서 별표, 별표 사용자로 실행 (루트?)

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

할 시도하면 오류가 발생합니다.

+0

스크립트는 사용자 별표로 실행됩니다. 그래서, 스크립트에 대한 권한이 실제로 그 (?)에 영향을 미치는지 확신 할 수 없습니다. 내가 그 명령을 루트로 실행하고 있습니다. 나는 그것을 시도하고 알려주 수 있습니다. – lnxchix

+0

필요가 없습니다.) SO는 디버그 용이 아닙니다. 직접 디버깅하거나 QA를 수행하고 디버깅하는 사람을 고용하십시오. – arheops

0

로그 파일에 대한 사용 권한 문제가있는 것으로 보입니다. 로그 파일이 별표가 아닌 소유자 루트로 설정되었습니다. 그리고 스크립트는 별표로 실행 중이며 .log 파일에 데이터를 쓸 수 없습니다. 문제 해결을 돕기 위해 여분의 눈빛을 얻었고 우리는 그것이 거래라고 생각했습니다. 그래서 전혀 astcanary 아니 었어! 모든 상황이 매우 이상했기 때문에 다른 사람이 그 사실을 본 적이 있는지 알고 싶었습니다. 그래서 너는 가까웠다. 적어도 사용자 액세스에 관한 한. 위의 명령을 수행 할 때도 별표를 루트로 실행하고있었습니다. 그래서 나는 sudo -u asterisk를 실행 한 다음 별표 -r을 실행했다.

나는 어리석은 질문 인 것처럼 느낀다. 그러나 그것은 매우 혼란스럽고 명백하지 않은 대답이었다! 당신의 응답을 주셔서 감사합니다! :)