Commit 1a2725f7 authored by ZZH's avatar ZZH

remove share sub 2026-6-25 15:40

parent d3ec7ab3
......@@ -8,7 +8,6 @@ import time
import asyncio
import signal
import pendulum
import argparse
from utils.time_format import CST, YMD_Hms
from gmqtt import Client as MQTTClient
from ems_water_grp.constants import SCADA_FIELDS_MAP
......@@ -17,19 +16,21 @@ from ems_water_grp.helper import load_mtype_from_sm
from infra.config.settings import SETTING
from infra.logger.logger import Logger
log_name = f"meter3rd_forward"
Logger.init_logger_path(f"./ems_water_grp", f"{log_name}.log", log_name)
logger = Logger.getLogger(log_name)
class Meter3rdForward:
sub_host = "172.18.4.82"
sub_uname = "nyconsumer"
sub_pwd = "nyconsumer!321"
# sub_topic = "factory/data"
sub_topic = "$share/qkup/factory/data"
sub_topic = "factory/data"
pub_username = "pot_emqx_super"
pub_topic_pfx = "eems/td/"
def __init__(self, worker_id):
self.worker_id = worker_id
def __init__(self):
self.client_sub = None
self.client_pub = None
......@@ -68,6 +69,7 @@ class Meter3rdForward:
data = json.loads(msg_str)
fId = data.get("fId")
if fId:
# logger.info(f"fId:{fId}, {data}")
self.d_last_msg[fId] = msg_str
except Exception as e:
logger.error(f"Decode msg:{payload} error: {e}")
......@@ -158,8 +160,7 @@ class Meter3rdForward:
pass
async def start(self):
client_id = admin_client_id(f"Meter3rdForward{self.worker_id}")
self.client_sub = MQTTClient(client_id)
self.client_sub = MQTTClient(admin_client_id("Meter3rdForward"))
self.client_sub.set_auth_credentials(self.sub_uname, self.sub_pwd)
self.client_sub.on_connect = self.on_sub_connect
self.client_sub.on_subscribe = self.on_sub_subscribe
......@@ -200,10 +201,10 @@ class Meter3rdForward:
await self.stop()
async def main(worker_id):
async def main():
while True:
try:
srv = Meter3rdForward(worker_id)
srv = Meter3rdForward()
await srv.start()
break
except Exception as e:
......@@ -212,21 +213,7 @@ async def main(worker_id):
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument(
"log_num",
metavar="log_num",
type=str,
help="log file number"
)
args = parser.parse_args()
log_num = args.log_num
log_name = f"meter3rd_forward_{log_num}"
Logger.init_logger_path(f"./ems_water_grp", f"{log_name}.log", log_name)
logger = Logger.getLogger(log_name)
try:
asyncio.run(main(log_num))
asyncio.run(main())
except KeyboardInterrupt:
pass
pass
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment