From 458beede1a0cb614307525e2781c2f01a0f9d104 Mon Sep 17 00:00:00 2001 From: Andrii Shvaika Date: Sat, 28 Nov 2020 15:05:11 +0200 Subject: [PATCH] Default Storage TTL in Days --- .../tenant/profile/DefaultTenantProfileConfiguration.java | 2 ++ .../rule/engine/telemetry/TbMsgTimeseriesNode.java | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/tenant/profile/DefaultTenantProfileConfiguration.java b/common/data/src/main/java/org/thingsboard/server/common/data/tenant/profile/DefaultTenantProfileConfiguration.java index 28ef5cae13..054f78766b 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/tenant/profile/DefaultTenantProfileConfiguration.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/tenant/profile/DefaultTenantProfileConfiguration.java @@ -45,6 +45,8 @@ public class DefaultTenantProfileConfiguration implements TenantProfileConfigura private long maxEmails; private long maxSms; + private int defaultStorageTtlDays; + private double warnThreshold; @Override diff --git a/rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/telemetry/TbMsgTimeseriesNode.java b/rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/telemetry/TbMsgTimeseriesNode.java index a415e08695..6042ac9939 100644 --- a/rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/telemetry/TbMsgTimeseriesNode.java +++ b/rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/telemetry/TbMsgTimeseriesNode.java @@ -50,10 +50,12 @@ import java.util.Map; public class TbMsgTimeseriesNode implements TbNode { private TbMsgTimeseriesNodeConfiguration config; + private long tenantProfileDefaultStorageTtl; @Override public void init(TbContext ctx, TbNodeConfiguration configuration) throws TbNodeException { this.config = TbNodeUtils.convert(configuration, TbMsgTimeseriesNodeConfiguration.class); + } @Override @@ -77,6 +79,9 @@ public class TbMsgTimeseriesNode implements TbNode { } String ttlValue = msg.getMetaData().getValue("TTL"); long ttl = !StringUtils.isEmpty(ttlValue) ? Long.parseLong(ttlValue) : config.getDefaultTTL(); + if (ttl == 0L) { + ttl = tenantProfileDefaultStorageTtl; + } ctx.getTelemetryService().saveAndNotify(ctx.getTenantId(), msg.getOriginator(), tsKvEntryList, ttl, new TelemetryNodeCallback(ctx, msg)); }