Прослушивание уведомления после создания экземпляра в Openstack

Мне интересно узнать, есть ли способ создать прослушиватель в openstack, который получает уведомление каждый раз, когда создается новый экземпляр.


person user3011322    schedule 05.12.2013    source источник


Ответы (2)


Попробуйте взглянуть на проект измерения рабочей нагрузки OpenStack https://launchpad.net/ceilometer.

person Max Lobur    schedule 05.12.2013

Один из способов сделать это — использовать сигналы Django. Таким образом, вы можете создать сигнал и отправить его после строки кода, которая создает экземпляр. Функция, которая ожидает уведомления, может быть сделана получателем, который слушает этот сигнал. Функция будет ждать, пока не получит сигнал. Например:

#Declaring a signal
from django.dispatch import Signal
instance_signal = Signal(providing_args=['param1', 'param2'])


#function that sends the signal
def instance_create():
--code that creates the instance  
instance_signal.send(sender='instance_create', param1='I am param 1', param2='I am param 2')


#Defining the function that listens to this signal(the receiver)
def notify_me(**kwargs):
x, y= kwargs['param1'], kwargs['param2']



#Connect the signal to the receiver (Can be written anywhere in the code)
instance_signal.connect(notify_me)

Самое приятное в Django Signals то, что вы можете создать сигнал, функцию приемника и подключить их в любом месте всего приложения. Сигналы Django очень полезны при планировании задач или, в вашем случае, при получении уведомлений.

person YBathia    schedule 09.03.2014