class Metrics::BaseJob
This is a base class for jobs that export metrics to AWS CloudWatch.
It configures the job to run on the metrics queue and does not retry if it fails, allowing it to be scheduled regularly.
Public Instance Methods
Source
# File app/jobs/metrics/base_job.rb, line 17 def client @client ||= Aws::CloudWatch::Client.new(region: "eu-west-2") end
Returns an Aws::CloudWatch::Client instance.
Source
# File app/jobs/metrics/base_job.rb, line 24 def put_metric_data(metric_data) transformed_metric_data = metric_data.map do |metric| metric.merge(dimensions: metric[:dimensions] + [app_environment]) end client.put_metric_data( namespace: "Mavis", metric_data: transformed_metric_data ) end
Puts metric data under the Mavis namespace, adding an AppEnvironment dimension to each metric.