Problem creating autoscaling ELB with alarms #568

garnaat opened this Issue Feb 9, 2012 · 8 comments

2 participants

the boto project member

Using this gist ( for guidance results in an error that actions_enabled is an illegal kwarg. Need an updated example.


Here is what I tried:

All the way down to cw_conn.create_alarm... worked - including those lines - but it did not create working alarms - no alarms were apparent when I poked around in the AWS console.


Using boto 2.2.1

the boto project member

Here's some code from the PAWS cookbook related to alarms.

This might be useful.

the boto project member

So, after running your script, what happens if you:




In [51]: cw_conn.describe_alarms()
DEBUG 2012-02-09 13:03:27,056 connection Method: GET
DEBUG 2012-02-09 13:03:27,057 connection Path: /
DEBUG 2012-02-09 13:03:27,057 connection Data:
DEBUG 2012-02-09 13:03:27,057 connection Headers: {}
DEBUG 2012-02-09 13:03:27,057 connection Host:
DEBUG 2012-02-09 13:03:27,058 connection establishing HTTPS connection:, kwargs={}
DEBUG 2012-02-09 13:03:27,058 connection Token: None
DEBUG 2012-02-09 13:03:27,058 auth using _calc_signature_2
DEBUG 2012-02-09 13:03:27,059 auth query string: AWSAccessKeyId=XXXXXX&Action=DescribeAlarms&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2012-02-09T13%3A03%3A27Z&Version=2010-08-01
DEBUG 2012-02-09 13:03:27,059 auth string_to_sign: GET
DEBUG 2012-02-09 13:03:27,059 auth len(b64)=44
DEBUG 2012-02-09 13:03:27,059 auth base64 encoded digest: ZZZZ=
DEBUG 2012-02-09 13:03:27,059 auth query_string: AWSAccessKeyId=XXXXXX&Action=DescribeAlarms&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2012-02-09T13%3A03%3A27Z&Version=2010-08-01 Signature: YYYY=
DEBUG 2012-02-09 13:03:27,192 connection

ERROR 2012-02-09 13:03:27,192 connection Null body

BotoServerError Traceback (most recent call last)
/Users/jdunck/work/consulting/XXXX/upvote/ in ()
----> 1 cw_conn.describe_alarms()

/Users/jdunck/.virtualenvs/XXXX2/lib/python2.6/site-packages/boto/ec2/cloudwatch/init.pyc in describe_alarms(self, action_prefix, alarm_name_prefix, alarm_names, max_records, state_value, next_token)
366 params['StateValue'] = state_value
367 return self.get_list('DescribeAlarms', params,
--> 368 [('MetricAlarms', MetricAlarms)])[0]
370 def describe_alarm_history(self, alarm_name=None,

/Users/jdunck/.virtualenvs/XXXX2/lib/python2.6/site-packages/boto/connection.pyc in get_list(self, action, params, markers, path, parent, verb)
885 if not body:
886 boto.log.error('Null body %s' % body)
--> 887 raise self.ResponseError(response.status, response.reason, body)
888 elif response.status == 200:
889 rs = ResultSet(markers)

BotoServerError: BotoServerError: 200 OK


re PAWS code, cool. I'll look into that more later. For now I have a pressing need for wrapping up some code and sleep.

the boto project member

Understood. Sorry you are having difficulties. I'm going to try to come up with a simple but complete example sometime today.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment