Scalr\Model\Entity\FarmRole::listFarmRoleMetric PHP Метод

listFarmRoleMetric() публичный статический Метод

Get a list of names farm-role scaling metrics.
public static listFarmRoleMetric ( integer $farmRoleId ) : array
$farmRoleId integer farm-role identifier
Результат array
    public static function listFarmRoleMetric($farmRoleId)
    {
        $result = [];
        /* @var $metric ScalingMetric */
        $metric = new ScalingMetric();
        /* @var $farmRoleMetric FarmRoleScalingMetric */
        $farmRoleMetric = new FarmRoleScalingMetric();
        $criteria[static::STMT_FROM] = "{$metric->table()} JOIN  {$farmRoleMetric->table()}  ON {$farmRoleMetric->columnMetricId} = {$metric->columnId}";
        $criteria[static::STMT_WHERE] = "{$farmRoleMetric->columnFarmRoleId} = {$farmRoleId}";
        $farmRoleMetrics = ScalingMetric::find($criteria);
        if ($farmRoleMetrics->count() > 0) {
            /* @var $scalingMetric ScalingMetric */
            foreach ($farmRoleMetrics as $scalingMetric) {
                $result[] = $scalingMetric->name;
            }
        }
        return $result;
    }

Usage Example

Пример #1
0
 /**
  * Gets scaling configuration data
  *
  * @param   FarmRole    $role FarmRole entity
  *
  * @return array ScalingConfiguration representation
  *
  * @see <need link to public API documentation>
  */
 public static function getScalingConfiguration(FarmRole $role)
 {
     $configuration = [];
     if (!empty($role->settings[FarmRoleSetting::SCALING_ENABLED])) {
         $configuration['enabled'] = !!$role->settings[FarmRoleSetting::SCALING_ENABLED];
     }
     if (!empty($role->settings[FarmRoleSetting::SCALING_MIN_INSTANCES])) {
         $configuration['minInstances'] = $role->settings[FarmRoleSetting::SCALING_MIN_INSTANCES];
     }
     if (!empty($role->settings[FarmRoleSetting::SCALING_MAX_INSTANCES])) {
         $configuration['maxInstances'] = $role->settings[FarmRoleSetting::SCALING_MAX_INSTANCES];
     }
     $configuration['rules'] = ScalingMetricAdapter::metricNameToData(FarmRole::listFarmRoleMetric($role->id));
     return $configuration;
 }