使用mqtt协议的python日志处理程序

mqtthandler的Python项目详细描述


使用mqtt协议的python日志处理程序。

安装

pip install mqtthandler

示例用法

importmqtthandlerimportloggingimporttimemqtthdlr=mqtthandler.MQTTHandler('server.mqtt.com','topic/test')mqtthdlr.setLevel(logging.INFO)logger=logging.getLogger()logger.addHandler(mqtthdlr)logger.setLevel(logging.INFO)logging.info('test')# Automatically connecting to the MQTT broker if not connected (equal to loop_start()) and sending log message to MQTT brokerlogging.info('test 2')# Wait for log being sent to the MQTT brokerwhileTrue:time.sleep(1)# You will only see#   test 2# on the broker if QoS = 0.

mqtthandler不会等待连接,您必须自己完成。 例如

mqtthdlr.loop_start()# Manually connect to the MQTT serverimporttime;time.sleep(3)# A dirty way to wait for MQTT connectedlogging.info('test')# send log message to MQTT broker

mqtthandler将创建一个线程来维护连接 (断开连接时自动重新连接)本身。这会让你 程序永远不会退出。您必须自己终止mqtthandler才能停止 MQTThandler线程。

mqtthdlr.loop_stop()# Stop MQTT thread

API

mqtthandler

构造器

MQTTHandler(host, topic, port=1883, keepalive=60, bind_address='', client_id='', clean_session=True, userdata=None, protocol=mqttc.MQTTv311, qos=0, retain=False)

paho.mqtt.python的引用。

方法

loop_start()
loop_stop()
max_inflight_messages_set(inflight)
message_retry_set(retry)
tls_set(ca_certs, certfile=None, keyfile=None, cert_reqs=ss.CERT_REQUIRED, tls_version=ssl.PROTOCOL_TLSv1, ciphers=None)
tls_insecure_set(value)
username_pw_set(username, password)
user_data_set(userdata)
will_set(topic, payload=None, qos=0, retain=False)

paho.mqtt.python的引用。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
异常如何在java中优雅地处理FileNotFoundexception   java线程卡在BlockingQueue上。无缘无故   类网格程序w/java   StrutsJava:动态应用Velocity脚本   java在运行时重写/禁用方面   java Apache POI无法正确读取Excel单元格中的秒数   具有不同用户权限的Java文件夹/文件创建   java我可以检查Firebase ValueEventListener onDataChanged是否已被调用吗?   尽管获得了用户权限,java Android开发文件权限仍被拒绝   java如何使用JPA映射map<EnumType,Double>?   java是否使用UI线程显示toast消息?   JAVAlang.IllegalArgumentException:不支持的元素:rss   java Android setRequestedOrientation活动和视图生命周期   安卓如何在Java中定义支票盒?   在Java中,对于大输入,字符串解析长期失败   使Java在XP中按计划任务运行读取env用户变量时出现问题   任务“:workflowsjava:NodeDriver”的梯度执行失败。main()   java如何检测是否只设置了部分属性?   在客户端web服务上使用JBossWS时,java无法找到/更改log4j的默认配置   java LibGDX写入文本文件并接收各种错误