Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 3, 2014 08:51:26

darksmoke
Зарегистрирован: 2014-10-03
Сообщения: 28
Репутация: +  0  -
Профиль   Отправить e-mail  

Fabric. Убить процесс на удаленной машине.

Добрый день
Я новичек в питоне. Мне нужно написать скрипт, Удаляющий процесс на удаленной машине(ах).
Есть скрипт, при его вызове, если все хорошо он возвращает слово pong, плохо, возвращает Node not responding to pings.
Я написал скрипт

from fabric.api import *
from StringIO import StringIO
env.user = 'sybase'
def check():
    output=run('cd /opt/data/rtc_mod_purse/bin/ && ./rtc_mod_purse ping')
    if "output" == 'pong':
        print('             [OK]')
    else:
        #run("ps aux | grep epmd")
        print('d')
    
Если скрипт возвращает pong, то все ок, выводится на экран .
А если скрипт не возращает ОК, то пишет
fab -H 10.61.128.30 check
Executing task ‘check’
run: cd /opt/data/rtc_mod_purse/bin/ && ./rtc_mod_purse ping
out: Node ‘rtc_mod_purse@10.61.128.30’ not responding to pings.
out:


Fatal error: run() received nonzero return code 1 while executing!

Requested: cd /opt/data/rtc_mod_purse/bin/ && ./rtc_mod_purse ping
Executed: /bin/bash -l -c “cd /opt/data/rtc_mod_purse/bin/ && ./rtc_mod_purse ping”

Aborting.
Disconnecting from 10.61.128.30… done.
Почему если pong не возвращается, то ничего не работает, почему?

Офлайн

#2 Окт. 3, 2014 09:00:59

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Fabric. Убить процесс на удаленной машине.

Видимо, вызов функции run('cd /opt/data/rtc_mod_purse/bin/ && ./rtc_mod_purse ping') вызывает исключение. Вам нужно перехватить исключение с помощью конструкции try..except и обработать эту ситуации в зависимости от логики вашей программы.



Офлайн

#3 Окт. 3, 2014 10:43:43

darksmoke
Зарегистрирован: 2014-10-03
Сообщения: 28
Репутация: +  0  -
Профиль   Отправить e-mail  

Fabric. Убить процесс на удаленной машине.

Спасибо, то что надо.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version