module Bottompad1
Constants
- VERSION
Public Class Methods
set_sftrace_config(current_path, env)
click to toggle source
# File lib/bottompad1.rb, line 9 def self.set_sftrace_config(current_path, env) sftrace_config_file = current_path + "/sftrace-" + env + "-config.yaml" if (File.exist?(sftrace_config_file)) sftrace_array = YAML.load_file(sftrace_config_file) else puts "[SFTRACE] Please provide a sftrace config.yaml file." return end if ((sftrace_array["key"] != nil) && (sftrace_array["tags"] != nil) && (sftrace_array["tags"]["serviceName"] != nil) && (sftrace_array["tags"]["appName"] != nil) && (sftrace_array["tags"]["projectName"] != nil) ) decoded_key = Base64.decode64("U25hcHB5RmxvdzEyMzQ1Ng==") decoded_profile_key = Base64.decode64(sftrace_array["key"]) decipher = OpenSSL::Cipher::AES.new(128, :CBC) decipher.decrypt decipher.key = decoded_key decipher.iv = decoded_profile_key[0, 16] plain = decipher.update(decoded_profile_key[16..-1]) + decipher.final plain_json = JSON.parse(plain) global_labels = "_tag_projectName=" + sftrace_array["tags"]["projectName"] + ",_tag_appName=" + sftrace_array["tags"]["appName"] + ",_tag_profileId=" + plain_json["profile_id"] ENV['ELASTIC_APM_VERIFY_SERVER_CERT'] = "false" ENV['ELASTIC_APM_CENTRAL_CONFIG'] = "false" ENV['ELASTIC_APM_SPAN_FRAMES_MIN_DURATION'] = "1s" ENV['ELASTIC_APM_STACK_TRACE_LIMIT'] = "2" ENV['ELASTIC_APM_SERVICE_NAME'] = sftrace_array["tags"]["serviceName"] ENV['ELASTIC_APM_SERVER_URL'] = plain_json["trace_server_url"] ENV['ELASTIC_APM_GLOBAL_LABELS'] = global_labels puts "[SFTRACE] SERVICE_NAME : " + ENV['ELASTIC_APM_SERVICE_NAME'] puts "[SFTRACE] SERVER_URL : " + ENV['ELASTIC_APM_SERVER_URL'] puts "[SFTRACE] GLOBAL_LABELS : " + ENV['ELASTIC_APM_GLOBAL_LABELS'] else puts "[SFTRACE] Add all the required details in sftrace config.yaml file." end end