3

保守性のために多数の CloudWatch アラームを整理しようとしていますが、編集時に Web コンソールの名前フィールドがグレー表示されます。CloudWatch アラームの名前を更新するための別の方法 (できればスクリプト可能なもの) はありますか? 私は、単純な実行可能スクリプト以外のプログラミングを必要としないソリューションを好みます。

4

3 に答える 3

5

当面の間、これを行うために使用するスクリプトを次に示します。

import sys
import boto


def rename_alarm(alarm_name, new_alarm_name):
    conn = boto.connect_cloudwatch()

    def get_alarm():
        alarms = conn.describe_alarms(alarm_names=[alarm_name])
        if not alarms:
            raise Exception("Alarm '%s' not found" % alarm_name)
        return alarms[0]

    alarm = get_alarm()

    # work around boto comparison serialization issue
    # https://github.com/boto/boto/issues/1311
    alarm.comparison = alarm._cmp_map.get(alarm.comparison)

    alarm.name = new_alarm_name
    conn.update_alarm(alarm)

    # update actually creates a new alarm because the name has changed, so
    # we have to manually delete the old one
    get_alarm().delete()

if __name__ == '__main__':
    alarm_name, new_alarm_name = sys.argv[1:3]

    rename_alarm(alarm_name, new_alarm_name)

これを許可するロールを持つ ec2 インスタンスを使用しているか、資格情報を含む ~/.boto ファイルがあることを前提としています。手動で追加するのは簡単です。

于 2014-12-15T16:21:28.903 に答える
2

残念ながら、これは現在不可能のようです。

于 2013-10-25T16:55:09.720 に答える