public static Condition cpuUsageCondition(String... serverNames) { return ServersMetricCondition.builder() .conditionName("CPU Usage %") .enabled(true) .servers(Arrays.asList(serverNames)) .metric(ServersMetricCondition.Metric.CPU_PERCENTAGE) // Raise critical if in the last 5 minutes cpu was over 90% .term(TermsConfiguration.builder() .priorityTerm(PriorityTerm.CRITICAL) .durationTerm(DurationTerm.DURATION_5) .operatorTerm(OperatorTerm.ABOVE) .timeFunctionTerm(TimeFunctionTerm.ALL) .thresholdTerm(90.0f) .build() ) // Raise warning if in the last 5 minutes cpu was over 70% .term(TermsConfiguration.builder() .priorityTerm(PriorityTerm.WARNING) .durationTerm(DurationTerm.DURATION_5) .operatorTerm(OperatorTerm.ABOVE) .timeFunctionTerm(TimeFunctionTerm.ALL) .thresholdTerm(70.0f) .build() ) .build(); }
public static Condition diskSpaceCondition(String... serverNames) { return ServersMetricCondition.builder() .conditionName("Fullest Disk %") .enabled(true) .servers(Arrays.asList(serverNames)) .metric(ServersMetricCondition.Metric.FULLEST_DISK_PERCENTAGE) // Raise critical if in the last 5 minutes disk was over 80% full .term(TermsConfiguration.builder() .priorityTerm(PriorityTerm.CRITICAL) .durationTerm(DurationTerm.DURATION_5) .operatorTerm(OperatorTerm.ABOVE) .timeFunctionTerm(TimeFunctionTerm.ALL) .thresholdTerm(80.0f) .build() ) // Raise warning if in the last 5 minutes disk was over 65% full .term(TermsConfiguration.builder() .priorityTerm(PriorityTerm.WARNING) .durationTerm(DurationTerm.DURATION_5) .operatorTerm(OperatorTerm.ABOVE) .timeFunctionTerm(TimeFunctionTerm.ALL) .thresholdTerm(65.0f) .build() ) .build(); }
public static Condition heapUsageCondition(String applicationName) { return ApmJvmCondition.builder() .conditionName("Heap usage") .enabled(true) .application(applicationName) .metric(ApmJvmCondition.Metric.HEAP_MEMORY_USAGE) // Raise critical if in the last 5 minutes heap memory usage was above 85% .term(TermsConfiguration.builder() .durationTerm(DurationTerm.DURATION_5) .operatorTerm(OperatorTerm.ABOVE) .priorityTerm(PriorityTerm.CRITICAL) .timeFunctionTerm(TimeFunctionTerm.ALL) .thresholdTerm(85f) .build() ) // Raise warning if in the last 5 minutes heap memory usage was above 65% .term(TermsConfiguration.builder() .durationTerm(DurationTerm.DURATION_5) .operatorTerm(OperatorTerm.ABOVE) .priorityTerm(PriorityTerm.WARNING) .timeFunctionTerm(TimeFunctionTerm.ALL) .thresholdTerm(65f) .build() ) .violationCloseTimer(ViolationCloseTimer.DURATION_24) .build(); }
public static Condition apdexCondition(String applicationName) { return ApmAppCondition.builder() .conditionName("Apdex") .enabled(true) .application(applicationName) .metric(ApmAppCondition.Metric.APDEX) .conditionScope(ApmAppCondition.ConditionScope.APPLICATION) // Raise critical if in the last 5 minutes apdex was below 0.7 .term(TermsConfiguration.builder() .durationTerm(DurationTerm.DURATION_5) .operatorTerm(OperatorTerm.BELOW) .priorityTerm(PriorityTerm.CRITICAL) .timeFunctionTerm(TimeFunctionTerm.ALL) .thresholdTerm(0.7f) .build() ) // Raise warning if in the last 5 minutes apdex was below 0.85 .term(TermsConfiguration.builder() .durationTerm(DurationTerm.DURATION_5) .operatorTerm(OperatorTerm.BELOW) .priorityTerm(PriorityTerm.WARNING) .timeFunctionTerm(TimeFunctionTerm.ALL) .thresholdTerm(0.85f) .build() ) .build(); }
public static BrowserCondition jsErrorsCondition(String applicationName) { return BrowserCondition.builder() .conditionName("Page views with JS errors") .enabled(true) .application(applicationName) .metric(BrowserCondition.Metric.PAGE_VIEWS_WITH_JS_ERRORS) .term(TermsConfiguration.builder() .durationTerm(DurationTerm.DURATION_5) .operatorTerm(OperatorTerm.ABOVE) .priorityTerm(PriorityTerm.WARNING) .thresholdTerm(1f) .timeFunctionTerm(TimeFunctionTerm.ANY) .build() ) .build(); }