Как Heat устанавливает конфигурацию сигналов тревоги и возвращает сигнал тревоги от Ceilometer?

Мне очень нужна твоя помощь. В настоящее время я работаю над автоматическим масштабированием Heat. Я уже изучил некоторые документы об автомасштабировании в Heat. Я знаю, что Heat использует API-интерфейс Ceilometer для настройки конфигурации сигналов тревоги и получения сигналов тревоги от Ceilometer через Webhook. Эти действия показаны в шаблоне HOT (OS::Heat::Ceilometer::Alarm). Я попытался посмотреть код Heat, но так и не смог найти, где (какие модули) обрабатывают тревожные действия. В частности, какой модуль будет отвечать за создание URL-адреса тревоги и какой модуль будет получать и обрабатывать URL-адрес тревоги, инициированный Ceilometer.

Спасибо


person Shayne Jonas    schedule 30.06.2016    source источник
comment
Привет всем, если у вас есть ответы, пожалуйста, помогите мне. Если мой вопрос вам не ясен, пожалуйста, дайте мне знать. Спасибо   -  person Shayne Jonas    schedule 03.07.2016


Ответы (1)


для создания URL-адреса будильника:

вы должны увидеть метод _get_ec2_signed_url

сработал URL-адрес будильника:

Это сингл в сервисе Heat-Cfg. вы можете найти больше кода (Liberty) в

heat/api/cfn/v1/__init__.py

mapper.connect('/signal/{arn:.*}',
               controller=signal_controller,
               action='signal',
               conditions=dict(method=['POST']))

и heat/api/cfn/v1/signal.py

def signal(self, req, arn, body=None):
    con = req.context
    identity = identifier.ResourceIdentifier.from_arn(arn)
    try:
        self.rpc_client.resource_signal(
            con,
            stack_identity=dict(identity.stack()),
            resource_name=identity.resource_name,
            details=body)
    except Exception as ex:
        return exception.map_remote_error(ex)

затем вы можете следовать цепочке вызовов, чтобы найти то, что вы хотите

person findmyway    schedule 07.09.2016