philbot-scheduler 1.4.2 → 1.4.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/scheduler.rb +25 -17
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 69b96f9e4941881cfbc8a55647cdc1bbd352b9b10bfcae7ceb65a19da8506e1a
4
- data.tar.gz: 53b0de0bfb732d5c331912947e0edbd2506b0c4750a8fc5f8e78c57db328029b
3
+ metadata.gz: e674d7add924bdb7978ee4403e9f8ca2c000b9bc78c8e927248ff54241146fa5
4
+ data.tar.gz: b627ad19f9641b6221a5dfb8260e74aaf568e2a8f0869219d67b56e5a996afe7
5
5
  SHA512:
6
- metadata.gz: d18af0a6e569604201b2bd60ce356add9a39360d3bde8d1babdb0b2be4404110eae230e030c86d0e9e03b41219af314552902e421a1121664b6a3bbc92ae6720
7
- data.tar.gz: ae61292892b82e88a4553912778b9259ea46b6dbfea69b594a83e91ad5c0f21abd1e916770ccf813e36cb2921a2e6b81e002f28231eb59680da9c828c5e1db14
6
+ metadata.gz: 9714a65d4eb96f656c102839248b2f55aed614fa599e7122e9409ee650e6dc47e1c52836ae150102856f399a037a199f5e7b2ef7209ab0e646015e9af70b6d5e
7
+ data.tar.gz: a311e201411c88bb48f7583ee62804ca034e8ae38669fda1f54f8772fa91e0026773c4427abf24bede5c23d63520cf5f53938f5be5920c160a007c8f5a834e1b
data/lib/scheduler.rb CHANGED
@@ -25,28 +25,36 @@ module ServiceResourceDetector
25
25
  end
26
26
  end
27
27
 
28
+ req = Net::HTTP::Put.new(path, initheader = { 'Content-Type' => 'text/plain'})
29
+ req.body = "whatever"
30
+ response = Net::HTTP.new(host, port).start {|http| http.request(req) }
31
+ puts response.code
32
+
33
+
28
34
  module AwsEC2ResourceDetector
29
35
  extend self
30
36
 
31
37
  def detect
32
- token_request = Net::HTTP.new(URI('http://169.254.169.254/latest/api/token'))
33
- token_request.add_field('X-aws-ec2-metadata-token-ttl-seconds', '60')
34
- token = token_request.send_request('PUT', '/latest/api/token').body
35
- identity = JSON.parse(Net::HTTP.get(URI('http://169.254.169.254/latest/dynamic/instance-identity/document'), { 'X-aws-ec2-metadata-token' => token }).body)
36
- hostname = Net::HTTP.get(URI('http://169.254.169.254/latest/meta-data/hostname'), { 'X-aws-ec2-metadata-token' => token }).body
37
- resource_attributes = {}
38
- unless identity.nil?
39
- resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_PROVIDER] = 'aws'
40
- resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_PLATFORM] = 'aws_ec2'
41
- resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_ACCOUNT_ID] = identity['accountId']
42
- resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_REGION] = identity['region']
43
- resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_AVAILABILITY_ZONE] = identity['availabilityZone']
44
- resource_attributes[OpenTelemetry::SemanticConventions::Resource::HOST_ID] = identity['instanceId']
45
- resource_attributes[OpenTelemetry::SemanticConventions::Resource::HOST_TYPE] = identity['instanceType']
46
- resource_attributes[OpenTelemetry::SemanticConventions::Resource::HOST_NAME] = hostname
38
+ begin
39
+ token = Net::HTTP.new('169.254.169.254', 80).start { |http| http.request(Net::HTTP::Put.new('/latest/api/token', initheader = { 'X-aws-ec2-metadata-token-ttl-seconds' => '60'})) }
40
+ identity = JSON.parse(Net::HTTP.get(URI('http://169.254.169.254/latest/dynamic/instance-identity/document'), { 'X-aws-ec2-metadata-token' => token }).body)
41
+ hostname = Net::HTTP.get(URI('http://169.254.169.254/latest/meta-data/hostname'), { 'X-aws-ec2-metadata-token' => token }).body
42
+ resource_attributes = {}
43
+ unless identity.nil?
44
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_PROVIDER] = 'aws'
45
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_PLATFORM] = 'aws_ec2'
46
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_ACCOUNT_ID] = identity['accountId']
47
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_REGION] = identity['region']
48
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_AVAILABILITY_ZONE] = identity['availabilityZone']
49
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::HOST_ID] = identity['instanceId']
50
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::HOST_TYPE] = identity['instanceType']
51
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::HOST_NAME] = hostname
52
+ end
53
+ resource_attributes.delete_if { |_key, value| value.nil? || value.empty? }
54
+ OpenTelemetry::SDK::Resources::Resource.create(resource_attributes)
55
+ rescue
56
+ OpenTelemetry::SDK::Resources::Resource.create({})
47
57
  end
48
- resource_attributes.delete_if { |_key, value| value.nil? || value.empty? }
49
- OpenTelemetry::SDK::Resources::Resource.create(resource_attributes)
50
58
  end
51
59
  end
52
60
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: philbot-scheduler
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.2
4
+ version: 1.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Philipp Lengauer