Improved rate limits message for MQTT session events

This commit is contained in:
Andrii Shvaika 2021-11-24 10:38:45 +02:00
parent 055331a89e
commit 6d006d16c7
3 changed files with 3 additions and 2 deletions

View File

@ -26,6 +26,7 @@ public class TbRateLimitsException extends RuntimeException {
private final EntityType entityType;
public TbRateLimitsException(EntityType entityType) {
super(entityType.name() + " rate limits reached!");
this.entityType = entityType;
}
}

View File

@ -951,7 +951,7 @@ public class MqttTransportHandler extends ChannelInboundHandlerAdapter implement
@Override
public void onError(Throwable e) {
if (e instanceof TbRateLimitsException) {
log.trace("[{}] Failed to submit session event", sessionId, e);
log.trace("[{}] Failed to submit session event: {}", sessionId, e.getMessage());
} else {
log.warn("[{}] Failed to submit session event", sessionId, e);
}

View File

@ -57,7 +57,7 @@ public class DefaultTransportRateLimitService implements TransportRateLimitServi
@Override
public EntityType checkLimits(TenantId tenantId, DeviceId deviceId, int dataPoints) {
if (!tenantAllowed.getOrDefault(tenantId, Boolean.TRUE)) {
return EntityType.TENANT;
return EntityType.API_USAGE_STATE;
}
if (!checkEntityRateLimit(dataPoints, getTenantRateLimits(tenantId))) {
return EntityType.TENANT;