Scalr\Modules\Platforms\Ec2\Observers\ElbObserver::deregisterInstanceFromLB PHP 메소드

deregisterInstanceFromLB() 개인적인 메소드

private deregisterInstanceFromLB ( DBServer $dbServer )
$dbServer DBServer
    private function deregisterInstanceFromLB(DBServer $dbServer)
    {
        try {
            $DBFarmRole = $dbServer->GetFarmRoleObject();
            if ($DBFarmRole->GetSetting(Entity\FarmRoleSetting::AWS_ELB_ENABLED)) {
                $elbId = $DBFarmRole->GetSetting(Entity\FarmRoleSetting::AWS_ELB_ID);
                $elb = $dbServer->GetEnvironmentObject()->aws($dbServer)->elb;
                $elb->loadBalancer->deregisterInstances($elbId, $dbServer->GetProperty(\EC2_SERVER_PROPERTIES::INSTANCE_ID));
                \Scalr::getContainer()->logger(\LOG_CATEGORY::FARM)->info(new \FarmLogMessage($dbServer->farmId, sprintf(_("Instance '%s' deregistered from '%s' load balancer"), $dbServer->GetProperty(\EC2_SERVER_PROPERTIES::INSTANCE_ID), $elbId), $dbServer->serverId, $dbServer->envId, $dbServer->farmRoleId));
            }
        } catch (\Exception $e) {
            \Scalr::getContainer()->logger(\LOG_CATEGORY::FARM)->info(new \FarmLogMessage($dbServer->farmId, sprintf(_("Cannot deregister instance from the load balancer: %s"), $e->getMessage()), $dbServer->serverId, $dbServer->envId, $dbServer->farmRoleId));
        }
    }