Skip to content

Commit

Permalink
Removed sinceValue from NRQL condition
Browse files Browse the repository at this point in the history
  • Loading branch information
pcimcioch committed Jul 6, 2022
1 parent c934971 commit 4c854ca
Show file tree
Hide file tree
Showing 12 changed files with 10 additions and 59 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
# 4.1.0 (06-07-2022)
- Removed deprecated `sinceValue` from Nrql Condition

# 4.0.1 (03-06-2022)
- Allow usage of aggregationTimer when EVENT_TIMER streaming method is used

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ Library is available in Maven Central
<dependency>
<groupId>com.ocadotechnology.newrelicalertsconfigurator</groupId>
<artifactId>newrelic-alerts-configurator</artifactId>
<version>4.0.1</version>
<version>4.1.0</version>
</dependency>
```

Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1 +1 @@
version=4.0.2-SNAPSHOT
version=4.1.1-SNAPSHOT
1 change: 0 additions & 1 deletion newrelic-alerts-configurator-dsl/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -262,7 +262,6 @@ val config: NrqlCondition = nrqlCondition {
enabled = true
valueFunction = NrqlCondition.ValueFunction.SINGLE_VALUE
query = "SELECT count(*) FROM `myApp:HealthStatus` WHERE healthy IS false"
sinceValue = NrqlCondition.SinceValue.SINCE_5
runBookUrl = "runBookUrl"

terms {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package com.ocadotechnology.newrelic.alertsconfigurator.dsl.configuration.condition

import com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.NrqlCondition
import com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.UserDefinedConfiguration
import com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.signal.NrqlSignalConfiguration
import com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.terms.NrqlTermsConfiguration
import com.ocadotechnology.newrelic.alertsconfigurator.dsl.NewRelicConfigurationMarker
Expand All @@ -14,7 +13,6 @@ class NrqlConditionDsl {
var runBookUrl: String? = null
var valueFunction: NrqlCondition.ValueFunction? = null
var query: String? = null
var sinceValue: NrqlCondition.SinceValue? = null
internal val terms: MutableList<NrqlTermsConfiguration> = mutableListOf()
var nrqlSignalConfiguration: NrqlSignalConfiguration? = null

Expand All @@ -36,7 +34,6 @@ fun nrqlCondition(block: NrqlConditionDsl.() -> Unit): NrqlCondition {
.terms(dsl.terms)
.valueFunction(requireNotNull(dsl.valueFunction) { "Nrql condition value cannot be null" })
.query(requireNotNull(dsl.query) { "Nrql condition query cannot be null" })
.sinceValue(requireNotNull(dsl.sinceValue) { "Nrql condition since cannot be null" })
.signal(dsl.nrqlSignalConfiguration)
.build()
}
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,6 @@ public static NrqlCondition healthCheckCondition(String applicationName) {
.operatorTerm(OperatorTerm.ABOVE)
.thresholdTerm(0f)
.build())
.sinceValue(NrqlCondition.SinceValue.SINCE_5)
.query("SELECT count(*) FROM `" + applicationName + ":HealthStatus` WHERE healthy IS false")
.build();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,6 @@ fun healthCheckCondition(applicationName: String): NrqlCondition {
conditionName = "Health Check"
enabled = true
valueFunction = NrqlCondition.ValueFunction.SINGLE_VALUE
sinceValue = NrqlCondition.SinceValue.SINCE_5
query = "SELECT count(*) FROM `$applicationName:HealthStatus` WHERE healthy IS false"

terms {
Expand Down
12 changes: 0 additions & 12 deletions newrelic-alerts-configurator/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -387,17 +387,6 @@ What you can set for NRQL condition:
- single_value - the condition will be evaluated by the raw value returned.
- sum - the condition will evaluate on the sum of the query results.
- query - Query in NRQL.
- since value - The timeframe in which to evaulate the query. Possible values are:
- 1
- 2
- 3
- 4
- 5
- 10
- 15
- 30
- 60
- 120
- signal configuration - Determines how data should be collected and what should happened when there is lack of data:
- aggregation window - Time (in seconds) for how long NewRelic collects data before running the NRQL query.
- evaluation windows - Number of windows to evaluate data.
Expand All @@ -418,7 +407,6 @@ NrqlCondition.builder()
.valueFunction(NrqlCondition.ValueFunction.SINGLE_VALUE)
.term(term)
.query("SELECT count(*) FROM `myApp:HealthStatus` WHERE healthy IS false")
.sinceValue(NrqlCondition.SinceValue.SINCE_5)
.build();
```

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,6 @@
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;

import static com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.signal.SignalUtils.intToStringOrNull;

@Slf4j
class NrqlConditionConfigurator extends AbstractPolicyItemConfigurator<AlertsNrqlCondition, NrqlCondition> {

Expand All @@ -44,7 +42,6 @@ protected AlertsNrqlCondition convertFromConfigItem(NrqlCondition condition) {
.terms(TermsUtils.createNrqlTerms(condition.getTerms()))
.valueFunction(condition.getValueFunction().getValueString())
.nrql(Nrql.builder()
.sinceValue(getSinceValueOrNull(condition))
.query(condition.getQuery())
.build());

Expand All @@ -58,10 +55,6 @@ protected AlertsNrqlCondition convertFromConfigItem(NrqlCondition condition) {
return nrqlConditionBuilder.build();
}

private String getSinceValueOrNull(NrqlCondition condition) {
return condition.getSinceValue() != null ? intToStringOrNull(condition.getSinceValue().getSince()) : null;
}

@Override
protected boolean sameInstance(AlertsNrqlCondition alertsNrqlCondition1, AlertsNrqlCondition alertsNrqlCondition2) {
return StringUtils.equals(alertsNrqlCondition1.getName(), alertsNrqlCondition2.getName());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@
* <li>{@link #terms}</li>
* <li>{@link #valueFunction}</li>
* <li>{@link #query}</li>
* <li>{@link #sinceValue}</li>
* <li>{@link #signal}</li>
* </ul>
*/
Expand Down Expand Up @@ -57,33 +56,12 @@ public class NrqlCondition {
*/
@NonNull
private String query;
/**
* This is the timeframe in which to evaluate the {@link #query}
*/
private SinceValue sinceValue;

/**
* NRQL Signal configuration.
*/
private NrqlSignalConfiguration signal;

@Getter
@AllArgsConstructor
public enum SinceValue {
SINCE_1(1),
SINCE_2(2),
SINCE_3(3),
SINCE_4(4),
SINCE_5(5),
SINCE_10(10),
SINCE_15(15),
SINCE_30(30),
SINCE_60(60),
SINCE_120(120);

final int since;
}

@Getter
@AllArgsConstructor
public enum ValueFunction {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,11 @@

import com.ocadotechnology.newrelic.alertsconfigurator.configuration.PolicyConfiguration;
import com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.NrqlCondition;
import com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.terms.*;
import com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.terms.NrqlDurationTerm;
import com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.terms.NrqlTermsConfiguration;
import com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.terms.OperatorTerm;
import com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.terms.PriorityTerm;
import com.ocadotechnology.newrelic.alertsconfigurator.configuration.condition.terms.TimeFunctionTerm;
import com.ocadotechnology.newrelic.apiclient.PolicyItemApi;
import com.ocadotechnology.newrelic.apiclient.model.conditions.Terms;
import com.ocadotechnology.newrelic.apiclient.model.conditions.nrql.AlertsNrqlCondition;
Expand All @@ -13,7 +17,6 @@ public class NrqlConditionConfiguratorTest extends AbstractPolicyItemConfigurato

private static final NrqlTermsConfiguration TERMS_CONFIGURATION = createTermsConfiguration().build();
private static final NrqlCondition.ValueFunction VALUE_FUNCTION = NrqlCondition.ValueFunction.SINGLE_VALUE;
private static final NrqlCondition.SinceValue SINCE_VALUE = NrqlCondition.SinceValue.SINCE_1;
private static final String QUERY = "query";
private static final NrqlCondition NRQL_CONDITION = createNrqlCondition(CONDITION_NAME);

Expand Down Expand Up @@ -77,7 +80,6 @@ private static NrqlCondition createNrqlCondition(String conditionName) {
.term(TERMS_CONFIGURATION)
.valueFunction(VALUE_FUNCTION)
.query(QUERY)
.sinceValue(SINCE_VALUE)
.build();
}

Expand All @@ -103,7 +105,6 @@ private static AlertsNrqlCondition.AlertsNrqlConditionBuilder createConditionBui
.valueFunction(VALUE_FUNCTION.getValueString())
.nrql(Nrql.builder()
.query(QUERY)
.sinceValue(String.valueOf(SINCE_VALUE.getSince()))
.build());
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,20 +1,14 @@
package com.ocadotechnology.newrelic.apiclient.model.conditions.nrql;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Value;

import static com.fasterxml.jackson.annotation.JsonInclude.Include.NON_NULL;

@Value
@Builder
@AllArgsConstructor
public class Nrql {
@JsonProperty
String query;
@JsonInclude(NON_NULL)
@JsonProperty("since_value")
String sinceValue;
}

0 comments on commit 4c854ca

Please sign in to comment.