Sha256: 869eb9eef5300a8c2730a0b518fd744ae3a248ed7f171acc7d5591aae8ee065e

Contents?: true

Size: 1.83 KB

Versions: 66

Compression:

Stored size: 1.83 KB

Contents

module ScoutApm
  class AppServerLoad
    attr_reader :logger

    def initialize(logger=Agent.instance.logger)
      @logger = logger
    end

    def run
      @thread = Thread.new do
        begin
          logger.info "Sending Application Startup Info - App Server: #{data[:app_server]}, Framework: #{data[:framework]}, Framework Version: #{data[:framework_version]}, Database Engine: #{data[:database_engine]}"
          logger.debug("Full Application Startup Info: #{data.inspect}")

          payload = ScoutApm::Serializers::AppServerLoadSerializer.serialize(data)
          reporter = Reporter.new(:app_server_load)
          reporter.report(payload)

          logger.debug("Finished sending Startup Info")
        rescue => e
          logger.info("Failed Sending Application Startup Info - #{e.message}")
          logger.debug(e.backtrace.join("\t\n"))
        end
      end
    rescue => e
      logger.debug("Failed Startup Info - #{e.message} \n\t#{e.backtrace.join("\t\n")}")
    end

    def data
      { :server_time        => Time.now,
        :framework          => ScoutApm::Environment.instance.framework_integration.human_name,
        :framework_version  => ScoutApm::Environment.instance.framework_integration.version,
        :environment        => ScoutApm::Environment.instance.framework_integration.env,
        :app_server         => ScoutApm::Environment.instance.app_server,
        :ruby_version       => RUBY_VERSION,
        :hostname           => ScoutApm::Environment.instance.hostname,
        :database_engine    => ScoutApm::Environment.instance.database_engine,
        :application_name   => ScoutApm::Environment.instance.application_name,
        :libraries          => ScoutApm::Utils::InstalledGems.new.run,
        :paas               => ScoutApm::Environment.instance.platform_integration.name
      }
    end
  end
end

Version data entries

66 entries across 66 versions & 1 rubygems

Version Path
scout_apm-2.0.0.pre7 lib/scout_apm/app_server_load.rb
scout_apm-1.6.4 lib/scout_apm/app_server_load.rb
scout_apm-2.0.0.pre6 lib/scout_apm/app_server_load.rb
scout_apm-1.6.3 lib/scout_apm/app_server_load.rb
scout_apm-2.0.0.pre5 lib/scout_apm/app_server_load.rb
scout_apm-2.0.0.pre4 lib/scout_apm/app_server_load.rb
scout_apm-1.6.2 lib/scout_apm/app_server_load.rb
scout_apm-1.6.1 lib/scout_apm/app_server_load.rb
scout_apm-2.0.0.pre3 lib/scout_apm/app_server_load.rb
scout_apm-1.6.0 lib/scout_apm/app_server_load.rb
scout_apm-2.0.0.pre2 lib/scout_apm/app_server_load.rb
scout_apm-1.5.5 lib/scout_apm/app_server_load.rb
scout_apm-1.5.4 lib/scout_apm/app_server_load.rb
scout_apm-1.5.3 lib/scout_apm/app_server_load.rb
scout_apm-1.5.2 lib/scout_apm/app_server_load.rb
scout_apm-1.5.1 lib/scout_apm/app_server_load.rb
scout_apm-2.0.0.pre lib/scout_apm/app_server_load.rb
scout_apm-1.5.0 lib/scout_apm/app_server_load.rb
scout_apm-1.5.0.pre2 lib/scout_apm/app_server_load.rb
scout_apm-1.5.0.pre lib/scout_apm/app_server_load.rb