Sha256: c451d2a926311da34e36c4856c211d26e29b4a2bb61c60e8ef060a2d096407ef
Contents?: true
Size: 996 Bytes
Versions: 1
Compression:
Stored size: 996 Bytes
Contents
# frozen_string_literal: true require 'rest-client' class MetricsHelper def initialize(metric_prefix, jpd_url, username, apikey) @metric_prefix = metric_prefix @jpd_url = jpd_url @username = username @apikey = apikey end def get_metrics url = nil url = case @metric_prefix when 'jfrog.artifactory' "#{@jpd_url}/artifactory/api/v1/metrics" when 'jfrog.xray' "#{@jpd_url}/xray/api/v1/metrics" else "#{@jpd_url}/artifactory/api/v1/metrics" end execute_rest_call(url, @username, @apikey) end def execute_rest_call(url, user, password) response = RestClient::Request.new( method: :get, url: url, user: user, password: password ).execute do |response, request, result| case response.code when 200 return response.body else raise Fluent::ConfigError, 'Cannot fetch #{@metric_prefix} metrics' end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fluent-plugin-jfrog-metrics-0.1.0 | lib/fluent/plugin/metrics_helper.rb |