ElastiCache のイベントとは ?

ElastiCache では、

  • ノード追加の成功 / 失敗
  • フェイルオーバー
  • セキュリティグループの変更

などイベントが発生した場合にログされ SNS に通知を流すことができます。


Memcached の方の ElastiCache イベント詳細は次 URL の「 ElastiCache イベント」の項にまとまっています。

AWS ドキュメント
Amazon ElastiCache > ElastiCache for Memcached ユーザーガイド

ElastiCache のイベントを見る

AWS ドキュメント
Amazon ElastiCache > ElastiCache for Memcached
https://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/mem-ug/ECEvents.Viewing.html

上記 AWS ドキュメントによると、 ElastiCache のイベントを確認する方法は次の 2 つがあります。

  • コンソール
  • AWS CLI
  • ElastiCache API

コンソールでイベントを見る

AWS マネジメントコンソール
ElastiCache コンソール
https://console.aws.amazon.com/elasticache/

AWS マネジメントコンソールにサインインし、上記 ElastiCache コンソールに移動すると、イベントが一覧で表示されます。

AWS CLI でイベントを見る

AWC CLI から ElastiCache のイベントを確認したい場合、 describe-events コマンドを実行します。

AWS CLI Command Reference
describe-events
https://docs.aws.amazon.com/cli/latest/reference/elasticache/describe-events.html

コマンドを実行すると、JSON が返却されます。

コマンドと返却データのサンプルは次です。 (https://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/mem-ug/ECEvents.Viewing.html から引用)

1$ aws elasticache describe-events --duration 1440
 1{
 2    "Events": [
 3        {
 4            "Date": "2017-03-29T22:17:37.781Z", 
 5            "Message": "Added cache node 0001 in Availability Zone us-west-2a", 
 6            "SourceIdentifier": "mem01", 
 7            "SourceType": "cache-cluster"
 8        }, 
 9        {
10            "Date": "2017-03-29T22:17:37.769Z", 
11            "Message": "Cache cluster created", 
12            "SourceIdentifier": "mem01", 
13            "SourceType": "cache-cluster"
14        }
15    ]
16}

ElastiCache API でイベントを見る

AWS ドキュメント
Amazon ElastiCache > API Reference
https://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/mem-ug/ECEvents.Viewing.html

HTTP でリクエストし、 XML がレスポンスされます。


リクエストとレスポンスのサンプルは次です。 (https://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/mem-ug/ECEvents.Viewing.html から引用)

リクエスト

1https://elasticache.us-west-2.amazonaws.com/
2   ?Action=DescribeEvents
3   &Duration=1440
4   &SignatureVersion=4
5   &SignatureMethod=HmacSHA256
6   &SourceType=cache-cluster
7   &Timestamp=20150202T192317Z
8   &Version=2015-02-02
9   &X-Amz-Credential=<credential>

レスポンス

 1<DescribeEventsResponse xmlns="http://elasticache.amazonaws.com/doc/2015-02-02/"> 
 2    <DescribeEventsResult> 
 3        <Events> 
 4            <Event> 
 5                <Message>Cache cluster created</Message> 
 6                <SourceType>cache-cluster</SourceType> 
 7                <Date>2015-02-02T18:22:18.202Z</Date> 
 8                <SourceIdentifier>mem01</SourceIdentifier> 
 9            </Event> 
10               
11 (...output omitted...)
12          
13        </Events> 
14    </DescribeEventsResult> 
15    <ResponseMetadata> 
16        <RequestId>e21c81b4-b9cd-11e3-8a16-7978bb24ffdf</RequestId> 
17    </ResponseMetadata> 
18</DescribeEventsResponse>

AWC CLI でちょっと実験してみた

オプションを付けない

1$ aws elasticache describe-events

オプションを全くつけない場合、おそらく「直近 1 時間程度」をみているようで、私のプロジェクトでは一つもイベントがヒットしませんでした。

1{
2    "Events":[]
3}

開始日を指定する

1$ aws elasticache describe-events --start-time 2017-03-30T07:03:49.555Z
1An error occurred (InvalidParameterCombination) when calling the DescribeEvents operation: Events occurring more that ys in the past are not available.

--start-time オプションを指定する場合、14 日以内 ? にしないと怒られるようでした。

今から n 分前

--duration オプションは、「今から n 分前からのイベント」を取ることができます。

14 日以内というのはこのオプションでも同じです。

最大 14 日前からログを取る場合、引数は [ 14 * 60 * 20 = 20160 ] 分ですね。

1aws elasticache describe-events --duration 20160

ElastiCache のイベントは、 RDS などと比べるとだいぶおとなしいため、私のプロジェクトでは 14 日間で数件イベントがヒットする程度でした。