Browse Source

Merge pull request #13551 from thingsboard/monitoring-improvements

LwM2M and CoAP monitoring fixes
pull/13570/head
Viacheslav Klimov 1 year ago
committed by GitHub
parent
commit
3a7a5ed669
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 1
      monitoring/pom.xml
  2. 13
      monitoring/src/main/java/org/thingsboard/monitoring/client/Lwm2mClient.java
  3. 5
      monitoring/src/main/java/org/thingsboard/monitoring/service/transport/impl/CoapTransportHealthChecker.java

1
monitoring/pom.xml

@ -41,7 +41,6 @@
<pkg.win.dist>${project.build.directory}/windows</pkg.win.dist>
<pkg.implementationTitle>ThingsBoard Monitoring Service</pkg.implementationTitle>
<pkg.mainClass>org.thingsboard.monitoring.ThingsboardMonitoringApplication</pkg.mainClass>
</properties>
<dependencies>

13
monitoring/src/main/java/org/thingsboard/monitoring/client/Lwm2mClient.java

@ -56,7 +56,6 @@ import org.thingsboard.monitoring.util.ResourceUtils;
import javax.security.auth.Destroyable;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.TimeUnit;
@ -73,7 +72,7 @@ public class Lwm2mClient extends BaseInstanceEnabler implements Destroyable {
@Setter
private LeshanClient leshanClient;
private static final List<Integer> supportedResources = Collections.singletonList(0);
private static final List<Integer> supportedResources = List.of(0, 16);
private String data = "";
@ -158,6 +157,7 @@ public class Lwm2mClient extends BaseInstanceEnabler implements Destroyable {
@Override
public void onBootstrapFailure(LwM2mServer bsserver, BootstrapRequest request, ResponseCode responseCode, String errorMessage, Exception cause) {
log.debug("onBootstrapFailure [{}] [{}] [{}]", request.getEndpointName(), responseCode, errorMessage);
// No implementation needed
}
@ -245,10 +245,11 @@ public class Lwm2mClient extends BaseInstanceEnabler implements Destroyable {
@Override
public ReadResponse read(LwM2mServer server, int resourceId) {
if (supportedResources.contains(resourceId)) {
return ReadResponse.success(resourceId, data);
}
return super.read(server, resourceId);
return switch (resourceId) {
case 0 -> ReadResponse.success(0, data);
case 16 -> ReadResponse.success(16, "U");
default -> super.read(server, resourceId);
};
}
@SneakyThrows

5
monitoring/src/main/java/org/thingsboard/monitoring/service/transport/impl/CoapTransportHealthChecker.java

@ -20,6 +20,7 @@ import org.eclipse.californium.core.CoapClient;
import org.eclipse.californium.core.CoapResponse;
import org.eclipse.californium.core.coap.CoAP;
import org.eclipse.californium.core.coap.MediaTypeRegistry;
import org.eclipse.californium.elements.config.SystemConfig;
import org.springframework.beans.factory.config.ConfigurableBeanFactory;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
@ -35,6 +36,10 @@ import java.io.IOException;
@Slf4j
public class CoapTransportHealthChecker extends TransportHealthChecker<CoapTransportMonitoringConfig> {
static {
SystemConfig.register();
}
private CoapClient coapClient;
protected CoapTransportHealthChecker(CoapTransportMonitoringConfig config, TransportMonitoringTarget target) {

Loading…
Cancel
Save