get“用pythonstompy发送数据时的闹钟(环绕)”

2024-04-26 20:38:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我想制作一个日志监视器,这样它就可以监视日志并解析日志,然后保存到数据库中,并通过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'

Tags: 数据signalexceptionchannelmsgelsesenttd
1条回答
网友
1楼 · 发布于 2024-04-26 20:38:39

signal.alarm(0)移到第一个else:块之后的finally:块中,以确保无论stomp.push(msg, destination=channel)成功与否,警报都会被清除。在

这样做将有助于您关注失败的真正原因,我怀疑这是stomp.push(msg, destination=channel)引发异常的结果,可能是因为stomp库无法解析来自远程服务器的返回值。在

相关问题 更多 >