cloudwatch-metrics 0.1.14 → 0.1.15

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4fea54b365db5f46b021de9a93dbe005d8c48a16a1022ad2f8ab8dc0aeb09a6d
4
- data.tar.gz: 597a6420648417aa1a48184211bf034846e12700a7a2a0f0501d7766736f8a19
3
+ metadata.gz: 1dff409be424bcafe2081ebe6583808b9577f957db434dcf6d0101f4e61c8eb9
4
+ data.tar.gz: bc45bed975955dc25846b8a427f8ed28b62f26f4910a8fef8262374ccd21eede
5
5
  SHA512:
6
- metadata.gz: 82270ea0dac105c309e03a3574e4a81774910ecee57f65f03068938e53dd5c693c3883851f40504b952053182c0d18deecba903924eca11eeeb8e648f64fc894
7
- data.tar.gz: 40f2f31599f3a4882df334b176f5d78657a047344a04ef3bc994006fabc556e05258829def820ceb6e78a802ea066a14252a83c683e13e506c4a6f7d4fea1732
6
+ metadata.gz: c63953bc1565b6aa922d8521067193d25c680667a09a1361dd5ef8dfaacdbbf31acf50ea0b11f552355372146a27dad2df59b6314f3cb70d330e538c084c8740
7
+ data.tar.gz: 4c93c5b6b9a38d6a570e86c271d0855bea2321b6c3474a9231119bfa3798a6e8af3a4158604738fc6e0cfc7c6cf681c1bdcd26ab7fe62494def64beeb639eea0
data/README.md CHANGED
@@ -23,7 +23,6 @@ The initializer contains descriptions for all available options. The only option
23
23
 
24
24
  * **namespace**: This is the default namespace that all metrics will be published to. This should probably match the name of your application or service.
25
25
 
26
-
27
26
  ## Usage
28
27
 
29
28
  Available methods are in the `CloudwatchMetrics` module. For convenience this is aliased to `CW` by default.
@@ -57,6 +56,10 @@ Both reporting methods accept optional parameters, which are detailed below, alo
57
56
  * `dimensions`: An array of name/value pairs that form part of the identity of a metric. Dimensions allow you to group and filter data points within a particular metric. Default is `nil`.
58
57
  * `timestamp`: The time associated with the data point. The timestamp can be up to two weeks in the past and up to two hours into the future. Default is the current time.
59
58
 
59
+ ### Local development
60
+
61
+ By default, `CloudWatchMetrics` only publishes to Cloudwatch in the production environment. In other environments it will write to the configured logger. These settings can be changed in the initializer.
62
+
60
63
  ### AWS Credentials
61
64
 
62
65
  See [HOWTO Assume AWS role](https://docs.google.com/document/d/1NCXtlhddpJCttBPs2V4mv3J59V0C3ShTzaoSidBAVTU/edit#heading=h.kr4pxvf3gqqt) for info about setting up AWS credential locally. You can read more about AWS SDK configuration in the [AWS docs](https://docs.aws.amazon.com/sdk-for-ruby/v3/developer-guide/setup-config.html).
@@ -68,6 +71,13 @@ aws_access_key_id = $AWS_ACCESS_KEY_ID
68
71
  aws_secret_access_key = $AWS_SECRET_ACCESS_KEY
69
72
  ```
70
73
 
74
+ You'll also want an `~/.aws/config` file to set the default region
75
+ ```
76
+ [default]
77
+ region = us-west-2
78
+ output = json
79
+ ```
80
+
71
81
  ## Cloudwatch Concepts
72
82
 
73
83
  Refer to the [Cloudwatch Documentation](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html) for a general overview of custom metrics in CloudWatch.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CloudwatchMetrics
4
- VERSION = '0.1.14'
4
+ VERSION = '0.1.15'
5
5
  end
@@ -45,10 +45,16 @@ module CloudwatchMetrics
45
45
  private
46
46
 
47
47
  def put_data(namespace:, metric_data:)
48
- resp = cloudwatch_client.put_metric_data({
49
- namespace: namespace,
50
- metric_data: metric_data
51
- })
48
+ if configuration.publish_environments.include?(environment)
49
+ cloudwatch_client.put_metric_data({namespace: namespace, metric_data: metric_data})
50
+ else
51
+ configuration.logger.info("CloudwatchMetrics (#{namespace}): #{metric_data}")
52
+ end
53
+
54
+ nil
55
+ rescue StandardError => e
56
+ configuration.logger.error("CloudwatchMetrics error: #{e.message}")
57
+ raise CloudwatchMetrics::Error, e.message
52
58
  end
53
59
 
54
60
  def cloudwatch_client
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloudwatch-metrics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.14
4
+ version: 0.1.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Seth Puckett