Sha256: 94b2d7cac6de53d9224bc86f144f0f971723e91968f88e4545aa88fcc6ac6bbd

Contents?: true

Size: 764 Bytes

Versions: 3

Compression:

Stored size: 764 Bytes

Contents

module ServiceTemplate
  class Identity
    def self.health
      {
        name: name,
        hostname: hostname,
        revision: revision,
        pid: pid,
        parent_pid: parent_pid,
        platform: platform
      }
    end

    def self.name
      ENV['SERVICE_NAME'] || 'api-service'
    end

    def self.hostname
      @hostname ||= `hostname`.strip
    end

    def self.revision
      @revision ||= `git rev-parse HEAD`.strip
    end

    def self.pid
      @pid ||= Process.pid
    end

    def self.parent_pid
      @ppid ||= Process.ppid
    end

    def self.platform
      {
        version: platform_revision,
        name: "ServiceTemplate"
      }
    end

    def self.platform_revision
      ServiceTemplate::VERSION
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
service_template-0.5.2 lib/service_template/identity.rb
service_template-0.5.1 lib/service_template/identity.rb
service_template-0.5.0 lib/service_template/identity.rb