Class: Gs2::Watch::Client
- Inherits:
-
Core::AbstractClient
- Object
- Core::AbstractClient
- Gs2::Watch::Client
- Defined in:
- lib/gs2/watch/Client.rb
Overview
GS2-Watch クライアント
Constant Summary
- @@ENDPOINT =
'watch'
- @@VARIATION =
'a'
Class Method Summary collapse
-
.ENDPOINT(v = nil) ⇒ Object
デバッグ用。通常利用する必要はありません。.
-
.VARIATION(v = nil) ⇒ Object
デバッグ用。通常利用する必要はありません。.
Instance Method Summary collapse
-
#create_alerm(request) ⇒ Array
アラームを作成
GS2 内のスタティスティックスに対して監視を行うことができます。
クオータの消費量に対して閾値を設定し、閾値を超えた際に通知を出すことができます。
. -
#delete_alerm(request) ⇒ Object
アラームを削除.
-
#describe_alerm(pageToken = nil, limit = nil) ⇒ Array
アラームリストを取得.
-
#describe_alerm_event(request, pageToken = nil, limit = nil) ⇒ Array
アラームイベントリストを取得
過去にアラームが発生した履歴などを確認できます。
. -
#describe_operation(request) ⇒ Array
オペレーション名リストを取得
アラームを設定する際に指定できるオペレーションの一覧を取得できます。
. -
#describe_service ⇒ Array
サービス名リストを取得
アラームを設定する際に指定できるサービスの一覧を取得できます。
. -
#get_alerm(request) ⇒ Array
アラームを取得.
-
#get_metric(request) ⇒ Array
メトリクスを取得
過去のサービスの利用状況を取得します。
. -
#initialize(region, gs2_client_id, gs2_client_secret) ⇒ Client
constructor
コンストラクタ.
-
#update_alerm(request) ⇒ Array
アラームを更新.
Constructor Details
#initialize(region, gs2_client_id, gs2_client_secret) ⇒ Client
コンストラクタ
18 19 20 |
# File 'lib/gs2/watch/Client.rb', line 18 def initialize(region, gs2_client_id, gs2_client_secret) super(region, gs2_client_id, gs2_client_secret) end |
Class Method Details
.ENDPOINT(v = nil) ⇒ Object
デバッグ用。通常利用する必要はありません。
23 24 25 26 27 28 29 |
# File 'lib/gs2/watch/Client.rb', line 23 def self.ENDPOINT(v = nil) if v @@ENDPOINT = v else return @@ENDPOINT end end |
.VARIATION(v = nil) ⇒ Object
デバッグ用。通常利用する必要はありません。
32 33 34 35 36 37 38 |
# File 'lib/gs2/watch/Client.rb', line 32 def self.VARIATION(v = nil) if v @@VARIATION = v else return @@VARIATION end end |
Instance Method Details
#create_alerm(request) ⇒ Array
アラームを作成
GS2 内のスタティスティックスに対して監視を行うことができます。
クオータの消費量に対して閾値を設定し、閾値を超えた際に通知を出すことができます。
105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 |
# File 'lib/gs2/watch/Client.rb', line 105 def create_alerm(request) if not request; raise ArgumentError.new(); end body = {} if request.has_key?('name'); body['name'] = request['name']; end if request.has_key?('description'); body['description'] = request['description']; end if request.has_key?('service'); body['service'] = request['service']; end if request.has_key?('serviceId'); body['serviceId'] = request['serviceId']; end if request.has_key?('operation'); body['operation'] = request['operation']; end if request.has_key?('expression'); body['expression'] = request['expression']; end if request.has_key?('threshold'); body['threshold'] = request['threshold']; end if request.has_key?('notificationId'); body['notificationId'] = request['notificationId']; end query = {} return post( 'Gs2Watch', 'CreateAlerm', @@ENDPOINT, @@VARIATION, '/alerm', body, query); end |
#delete_alerm(request) ⇒ Object
アラームを削除
209 210 211 212 213 214 215 216 217 218 219 220 221 |
# File 'lib/gs2/watch/Client.rb', line 209 def delete_alerm(request) if not request; raise ArgumentError.new(); end if not request.has_key?('alermName'); raise ArgumentError.new(); end if not request['alermName']; raise ArgumentError.new(); end query = {} return delete( 'Gs2Watch', 'DeleteAlerm', @@ENDPOINT, @@VARIATION, '/alerm/' + request['alermName'], query); end |
#describe_alerm(pageToken = nil, limit = nil) ⇒ Array
アラームリストを取得
62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/gs2/watch/Client.rb', line 62 def describe_alerm(pageToken = nil, limit = nil) query = {} if pageToken; query['pageToken'] = pageToken; end if limit; query['limit'] = limit; end return get( 'Gs2Watch', 'DescribeAlerm', @@ENDPOINT, @@VARIATION, '/alerm', query); end |
#describe_alerm_event(request, pageToken = nil, limit = nil) ⇒ Array
アラームイベントリストを取得
過去にアラームが発生した履歴などを確認できます。
239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 |
# File 'lib/gs2/watch/Client.rb', line 239 def describe_alerm_event(request, pageToken = nil, limit = nil) if not request; raise ArgumentError.new(); end if not request.has_key?('alermName'); raise ArgumentError.new(); end if not request['alermName']; raise ArgumentError.new(); end query = {} if pageToken; query['pageToken'] = pageToken; end if limit; query['limit'] = limit; end return get( 'Gs2Watch', 'DescribeAlermEvent', @@ENDPOINT, @@VARIATION, '/alerm/' + request['alermName'] + '/event', query); end |
#describe_operation(request) ⇒ Array
オペレーション名リストを取得
アラームを設定する際に指定できるオペレーションの一覧を取得できます。
279 280 281 282 283 284 285 286 287 288 289 290 291 292 |
# File 'lib/gs2/watch/Client.rb', line 279 def describe_operation(request) if not request; raise ArgumentError.new(); end if not request.has_key?('serviceName'); raise ArgumentError.new(); end if not request['serviceName']; raise ArgumentError.new(); end query = {} result = get( 'Gs2Watch', 'DescribeOperation', @@ENDPOINT, @@VARIATION, '/service/' + request['serviceName'] + '/operation', query); return result['items']; end |
#describe_service ⇒ Array
サービス名リストを取得
アラームを設定する際に指定できるサービスの一覧を取得できます。
260 261 262 263 264 265 266 267 268 269 270 |
# File 'lib/gs2/watch/Client.rb', line 260 def describe_service() query = {} result = get( 'Gs2Watch', 'DescribeService', @@ENDPOINT, @@VARIATION, '/service', query); return result['items']; end |
#get_alerm(request) ⇒ Array
アラームを取得
147 148 149 150 151 152 153 154 155 156 157 158 159 |
# File 'lib/gs2/watch/Client.rb', line 147 def get_alerm(request) if not request; raise ArgumentError.new(); end if not request.has_key?('alermName'); raise ArgumentError.new(); end if not request['alermName']; raise ArgumentError.new(); end query = {} return get( 'Gs2Watch', 'GetAlerm', @@ENDPOINT, @@VARIATION, '/alerm/' + request['alermName'], query); end |
#get_metric(request) ⇒ Array
メトリクスを取得
過去のサービスの利用状況を取得します。
310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 |
# File 'lib/gs2/watch/Client.rb', line 310 def get_metric(request) if not request; raise ArgumentError.new(); end if not request.has_key?('serviceId'); raise ArgumentError.new(); end if not request['serviceId']; raise ArgumentError.new(); end if not request.has_key?('operation'); raise ArgumentError.new(); end if not request['operation']; raise ArgumentError.new(); end query = {} if request.has_key?('begin'); query['begin'] = request['begin']; end if request.has_key?('end'); query['end'] = request['end']; end if request.has_key?('allowLongTerm'); query['allowLongTerm'] = request['allowLongTerm']; end return get( 'Gs2Watch', 'GetMetric', @@ENDPOINT, @@VARIATION, '/metric/' + request['serviceId'] + '/' + request['operation'], query); end |
#update_alerm(request) ⇒ Array
アラームを更新
185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 |
# File 'lib/gs2/watch/Client.rb', line 185 def update_alerm(request) if not request; raise ArgumentError.new(); end if not request.has_key?('alermName'); raise ArgumentError.new(); end if not request['alermName']; raise ArgumentError.new(); end body = {} if request.has_key?('description'); body['description'] = request['description']; end if request.has_key?('expression'); body['expression'] = request['expression']; end if request.has_key?('threshold'); body['threshold'] = request['threshold']; end if request.has_key?('notificationId'); body['notificationId'] = request['notificationId']; end query = {} return put( 'Gs2Watch', 'UpdateAlerm', @@ENDPOINT, @@VARIATION, '/alerm/' + request['alermName'], body, query); end |