get "Будильник при отправке данных с python-stompy (на орбите)"

Я хотел бы сделать монитор журнала, поэтому он контролирует журнал и анализирует журнал, а затем сохранить в БД и отправить эти данные через Stomp. Да, он успешно передает данные, но после того, как я нажимаю данные, я получаю сообщение об ошибке > "Alarm Clock" and the program stopped !

Это мой код:

def sent_msg(msg,channel)    
    try:
        stomp = Client(host="localhost", port=54123)
        stomp.connect()
        stomp.subscribe(channel)
        signal.alarm(1)
        stomp.put(msg, destination=channel)
        signal.alarm(0)
    except Exception,err:
        print err
    else:
        print 'succes'


try:
    msg = """
    <td>%s</td>
    <td>%s</td>
    <td>%s</td>
    <td>%s</td>
    <td>%s</td>
    """%(ip,dt,time,ua,req)
    sent_msg(msg,'/monitor_sqli')
except Exception, err:
    print err
else:
    print 'exist'

1 ответ

Переехать signal.alarm(0) в finally: блок после вашего первого else: блок, чтобы гарантировать, что сигнал тревоги очищен независимо от stomp.push(msg, destination=channel) быть успешным или нет.

Это поможет вам сосредоточиться на реальной причине сбоя, который, как я подозреваю, является результатом исключения, выдаваемого stomp.push(msg, destination=channel) - возможно, потому что возвращаемое значение с удаленного сервера не может быть проанализировано библиотекой stomp.

Другие вопросы по тегам