pyModbus - монитор входящего/исходящего трафика TCPServer

Я новичок в питоне. Извините, если вопрос может показаться глупым.

Я использую pyModbus для реализации асинхронного TCP-сервера Modbus на BeagleBone Black. Он работает хорошо, я могу подключаться к клиентам и получать значения из регистров.

Я запускаю сервер с:

from pymodbus.server.async import StartTcpServer

StartTcpServer(context, identity=identity, address=("0.0.0.0", 502))

Сейчас я пытаюсь реализовать монитор входящего и исходящего трафика на сервере. Мне нужно было бы построить / зарегистрировать все запросы от клиента (клиентов) и все ответы с сервера.

Есть ли способ получить доступ к буферам rx/tx?

Спасибо.


person marcorto    schedule 19.12.2019    source источник


Ответы (1)


Вы можете включить logging в качестве режима отладки для сервера Modbus следующим образом:

import logging
FORMAT = ('%(asctime)-15s %(threadName)-15s'
          ' %(levelname)-8s %(module)-15s:%(lineno)-8s %(message)s')
logging.basicConfig(format=FORMAT)
log = logging.getLogger()
log.setLevel(logging.DEBUG)

Вот исходный пример.

person Benyamin Jafari    schedule 09.01.2020
comment
Спасибо, Беньямин, но слишком много информации для разбора/регистрации. Вы получаете запись на любое событие. Мне действительно нужно просто получить доступ к буферам, в которых хранятся входящие/исходящие сообщения. - person marcorto; 10.01.2020