https://github.com/newrelic-platform/newrelic_aws_cloudwatch_plugin
"New Relic Amazon CloudWatch Plugin"を使って、AWSのサービスの監視データをNew Relicで確認できるようにします。以下の様なイメージです。
このプラグインは、CloudWatchから任意のデータを取得してNew Relicに入れるようになっています。データはCloudWatchでも確認可能な情報ですが、視認性の良いグラフで表示してくれます。
対応サービス:
EC2, EBS, ELB, RDS, SQS, SNS and ElastiCache(Memcached and Redis)
必要なスペック:
A single t1.micro EC2 instance (in any region)
Ruby (>= 1.9.2)
Rubygems (>= 1.3.7)
Bundler gem install bundler
Git
インストール方法:
※ 今回はCentOS6.6でインスールしました。
nokogiri に必要なyumライブラリをインストール。
# yum -y install libxml2-devel libxslt-devel
ソースを git clone。
# git clone https://github.com/newrelic-platform/newrelic_aws_cloudwatch_plugin.git
Gemライブラリをインストール。
# cd newrelic_aws_cloudwatch_plugin # bundle install
設定ファイルを編集。
# cp config/template_newrelic_plugin.yml config/newrelic_plugin.yml # emacs config/newrelic_plugin.yml
変更箇所は以下のようになります。
New Relicのライセンスキーを設定。
newrelic: # # Update with your New Relic account license key: # license_key: 'New Relicのライセンスキー'
AWSのアクセスキーと、シークレットキーを設定。
# # AWS configuration. # aws: # Update with you AWS account keys: access_key: 'AWSアクセスキー' secret_key: 'AWSシークレットキー'
AWSのリュージョンを設定。Tokyoの場合は、ap-northeast-1 とします。
# Specify AWS regions to query for metrics regions: - ap-northeast-1
どの項目をチェックするか設定します。
RDSの場合は、インスタンスID(DB Instance Identifier)を設定します。
# # Agent configuration. # agents: # # Enable/disable agents with the enabled attribute or by commenting out each agent. ec2: enabled: true ebs: enabled: true elb: enabled: true rds: enabled: true instance_identifiers: - インスタンスID
エージェントをスタート。
# bundle exec bin/newrelic_aws 2>> /var/log/newrelic/newrelic_aws.log&うまくいかなかったら、verboseオプションを有効にしてみてください。詳細をログに記録してくれます。
bin/daemonも用意されていますが、ログを落としてくれないので、上記のような起動にしています。スタートスクリプトは自作するのが良いかもしれません。
また、以下の様な警告がログに記録される場合があります。いつの間にかログが肥大したりすることもあるので注意しましょう。
Digest::Digest is deprecated; use Digest
Enjoy!