import json
import pika

#队列生产者函数
result={'alert':True}
def productor(msg):
    #建立连接
    userx=pika.PlainCredentials("admin","admin")
    conn=pika.BlockingConnection(pika.ConnectionParameters("20.4.32.84",5672,'/',credentials=userx))
    #开辟管道
    channelx=conn.channel()
    #创建交换机
    channelx.exchange_declare(exchange='zabbix_alert_exchange',exchange_type='direct',auto_delete=False)
    #创建队列并绑定交换机S
    channelx.queue_declare(queue="zabbix_alert_query", durable=False, auto_delete=False)
    channelx.queue_bind(queue="zabbix_alert_query", exchange='zabbix_alert_exchange', routing_key="zabbix_alert_key")
    #发送数据,发送一条,如果要发送多条则复制此段
    channelx.basic_publish(exchange="zabbix_alert_exchange",
                           routing_key="zabbix_alert_key",# 队列名
                           body=str(msg).encode(), # 发送的数据,
                           # properties=pika.BasicProperties(
                           #     delivery_mode=2
                           # )
                )
    print("--------发送告警数据完成:%s-----------" % (str(msg)))
    #关闭连接
    conn.close()

productor(json.dumps(result))

发表评论

邮箱地址不会被公开。