Sha256: 87413c7c38a7000865b1cc23c56601d2fd0d8e41ffd8bda53f0fab0217302618

Contents?: true

Size: 754 Bytes

Versions: 37

Compression:

Stored size: 754 Bytes

Contents

require 'securerandom'
require 'ddtrace/ext/runtime'

module Datadog
  module Runtime
    # For runtime identity
    module Identity
      module_function

      # Retrieves number of classes from runtime
      def id
        @pid ||= Process.pid
        @id ||= SecureRandom.uuid

        # Check if runtime has changed, e.g. forked.
        if Process.pid != @pid
          @pid = Process.pid
          @id = SecureRandom.uuid
        end

        @id
      end

      def lang
        Ext::Runtime::LANG
      end

      def lang_interpreter
        Ext::Runtime::LANG_INTERPRETER
      end

      def lang_version
        Ext::Runtime::LANG_VERSION
      end

      def tracer_version
        Ext::Runtime::TRACER_VERSION
      end
    end
  end
end

Version data entries

37 entries across 37 versions & 2 rubygems

Version Path
ddtrace-0.42.0 lib/ddtrace/runtime/identity.rb
ddtrace-0.41.0 lib/ddtrace/runtime/identity.rb
ls-trace-0.2.0 lib/ddtrace/runtime/identity.rb
ddtrace-0.40.0 lib/ddtrace/runtime/identity.rb
ddtrace-0.39.0 lib/ddtrace/runtime/identity.rb
ddtrace-0.38.0 lib/ddtrace/runtime/identity.rb
ddtrace-0.37.0 lib/ddtrace/runtime/identity.rb
ddtrace-0.36.0 lib/ddtrace/runtime/identity.rb
ls-trace-0.1.2 lib/ddtrace/runtime/identity.rb
ddtrace-0.35.2 lib/ddtrace/runtime/identity.rb
ddtrace-0.35.1 lib/ddtrace/runtime/identity.rb
ddtrace-0.35.0 lib/ddtrace/runtime/identity.rb
ddtrace-0.34.2 lib/ddtrace/runtime/identity.rb
ddtrace-0.34.1 lib/ddtrace/runtime/identity.rb
ddtrace-0.34.0 lib/ddtrace/runtime/identity.rb
ddtrace-0.33.1 lib/ddtrace/runtime/identity.rb
ddtrace-0.33.0 lib/ddtrace/runtime/identity.rb
ddtrace-0.32.0 lib/ddtrace/runtime/identity.rb
ddtrace-0.31.1 lib/ddtrace/runtime/identity.rb
ddtrace-0.31.0 lib/ddtrace/runtime/identity.rb