Я написал лямбду, используя клиент AWS MQTT для публикации в AWS IoT Broker .
В своем подчеркивании клиент AWS MQTT использует клиента PAHO MQTT .
всякий раз, когдамоя лямбда вызывается, она публикует сообщение брокеру IoT AWS, который на данный момент запускает правило IoT.
Однако, когда продолжительность между двумя последовательными сообщениями, вызывающими лямбда, превышает 30 секунд, соединение клиентапотерял.Хотя логика повторных попыток восстанавливает соединение, несколько миллисекунд теряются.
Мой первоначальный мыслительный процесс состоял в том, что IoT Broker может отключить клиента из-за неактивности.Поэтому я написал простую программу, запущенную из моего локального компьютера, которая соединяет IoT Broker.
Я открыл уровни журнала для класса org.eclipse.paho.client.mqttv3.internal.ClientState для отслеживания уровня с помощью logback.xml .Как можно видеть, базовый клиент PAHO непрерывно отправляет пакет PINGREQ.Клиент соответствует условию интервал поддержания активности и поэтому никогда не отключается.
Мой вопрос :
Почему приложение работает по-разному в лямбда-выражении?
Мой подход:
Чтобы узнать основную причину, я хотел открыть журналы для того же базового клиента PAHO MQTT в CloudWatch.
Я попробовал следующее log4j2.xml , но не удалось открыть журналы того же класса в облачном хранилище.Поэтому я хочу знать, как вы открываете журналы какого-то другого библиотечного класса в своем лямбда-приложении для Java?