Source code for fastiot_core_services.nats_logger.nats_logger_module

from fastiot import logging
from fastiot.core import FastIoTService, Subject, subscribe
from fastiot_core_services.nats_logger.env import nats_logger_env as env


[docs]class NatsLoggerService(FastIoTService): @subscribe(subject=Subject(name=env.subject, msg_cls=dict)) async def _on_data_received(self, subject_name: str, msg: dict): if env.filter_field is None or str(msg.get(env.filter_field)) == env.filter_value: logging.info("%s: %s", subject_name, str(msg))
if __name__ == '__main__': NatsLoggerService.main()