org.apache.flink.runtime.resourcemanager.autoscale.plugins.symptoms.ClusterHighMemory Maven / Gradle / Ivy
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.flink.runtime.resourcemanager.autoscale.plugins.symptoms;
import org.apache.flink.runtime.resourcemanager.autoscale.plugins.ResourceSymptom;
/**
* Symptom indicating cluster memory high.
*/
public class ClusterHighMemory implements ResourceSymptom {
private double available;
private double capacity;
private double utility;
public ClusterHighMemory(double available, double capacity, double utility) {
this.available = available;
this.capacity = capacity;
this.utility = utility;
}
public double getCapacity() {
return capacity;
}
public double getUsage() {
return available;
}
public double getUtility() {
return utility;
}
@Override
public String toString() {
return String.format("%s[utilities:%.2f][capacity:%.2f][available:%.2f]", getClass().getSimpleName(),
utility, capacity, available);
}
}