philbot-scheduler 1.4.2 → 1.4.4

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 +19 -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: 31630991a1f328e8acb2eaf0b15ce5b671393ad8f8d7dfa24ccc312fefd13093
4
+ data.tar.gz: 020c8ee78ca48e0f7e564e908104f267a084ae4ad1eb1608d8bf37bae301bebb
5
5
  SHA512:
6
- metadata.gz: d18af0a6e569604201b2bd60ce356add9a39360d3bde8d1babdb0b2be4404110eae230e030c86d0e9e03b41219af314552902e421a1121664b6a3bbc92ae6720
7
- data.tar.gz: ae61292892b82e88a4553912778b9259ea46b6dbfea69b594a83e91ad5c0f21abd1e916770ccf813e36cb2921a2e6b81e002f28231eb59680da9c828c5e1db14
6
+ metadata.gz: ade93746eee0c4edaee38d5f91748b78f04b3bc424c6aa0f482de1af59e3c9adf5afdbbba75c9de2182ddd8b1582102f86f7a529540dade594a790efcd046af3
7
+ data.tar.gz: 00653e37ad30d6ae4e709d3a8dbb5ab83fd6a5bdfeb3a9774565613591d19b5222286e74b1623ab82963740f4b5c9f0c410e97847c161e5b943b4cac2a2e5296
data/lib/scheduler.rb CHANGED
@@ -29,24 +29,26 @@ module AwsEC2ResourceDetector
29
29
  extend self
30
30
 
31
31
  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
32
+ begin
33
+ 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'})) }
34
+ identity = JSON.parse(Net::HTTP.get(URI('http://169.254.169.254/latest/dynamic/instance-identity/document'), { 'X-aws-ec2-metadata-token' => token }).body)
35
+ hostname = Net::HTTP.get(URI('http://169.254.169.254/latest/meta-data/hostname'), { 'X-aws-ec2-metadata-token' => token }).body
36
+ resource_attributes = {}
37
+ unless identity.nil?
38
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_PROVIDER] = 'aws'
39
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_PLATFORM] = 'aws_ec2'
40
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_ACCOUNT_ID] = identity['accountId']
41
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_REGION] = identity['region']
42
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::CLOUD_AVAILABILITY_ZONE] = identity['availabilityZone']
43
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::HOST_ID] = identity['instanceId']
44
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::HOST_TYPE] = identity['instanceType']
45
+ resource_attributes[OpenTelemetry::SemanticConventions::Resource::HOST_NAME] = hostname
46
+ end
47
+ resource_attributes.delete_if { |_key, value| value.nil? || value.empty? }
48
+ OpenTelemetry::SDK::Resources::Resource.create(resource_attributes)
49
+ rescue
50
+ OpenTelemetry::SDK::Resources::Resource.create({})
47
51
  end
48
- resource_attributes.delete_if { |_key, value| value.nil? || value.empty? }
49
- OpenTelemetry::SDK::Resources::Resource.create(resource_attributes)
50
52
  end
51
53
  end
52
54
 
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.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Philipp Lengauer