JavaでRDSのイベントログを取得する

“DB instance restarted” といった RDS のイベント情報を API 経由で取得することができます。

    Calendar cal = Calendar.getInstance();
    cal.add(Calendar.WEEK_OF_MONTH, -1);

    DescribeEventsResult results =
      client.describeEvents(new DescribeEventsRequest().withSourceIdentifier(
        "test-db").withSourceType(
        SourceType.DbInstance).withStartTime(cal.getTime()));

    List<Event> events = results.getEvents();
    for (Event event : events) {
      // 発生日時
      Date date = event.getDate();
      // メッセージ
      String message = event.getMessage();
      // カテゴリ
      List<String> eventCategories = event.getEventCategories();
    }