foam-ruby 0.1.0.alpha1 → 0.1.0.alpha2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6fd659f190b92247bff589dafeed2d7ac4c8cb5897b6dc20e779914b65911f63
4
- data.tar.gz: f1861ab90f5a331225bb0ee36eefe5bf32ede8a373bd668cfeeed493542633a2
3
+ metadata.gz: dfb574e004a4d74fd1fb699e4c3100813aa056e511cb6e929c702a4658e0fd7a
4
+ data.tar.gz: 4efaab0c5270edeb57001b49cc02181fa7dc4c1688654257e4a94c9ccd1f5002
5
5
  SHA512:
6
- metadata.gz: 596c7ec442d2cfc7e50bb9ef265c346e671910e237868ae73560751e1df867cb7363632a0b0486b108b7bfb776ea6a2c93f1d18a686f318405c293f71bc80a10
7
- data.tar.gz: adc51e59deeb2f121d2f5e39892931b58e410b8c50726189b8cf4b09242e0725d085c06802ff1c609fcc3119440e31032bbafe55d72c4af9f8fe1388435a692e
6
+ metadata.gz: 1048e8ee39af1cbdcc4398eb74ae61563d4130322431dbc2703f6b2c1f1f435307814ec318e192bd47062c5a25d51a0197ddd037f9f2a95ef73fa017b0a10ba6
7
+ data.tar.gz: b54aacfcc61649254947ad055162ec48ee635b043efe276564b50897c75b4e85cd4baa0847459b417e0f2a8c55047a9aca8c0b6e0809110ef98994ac04a8ac3e
data/README.md CHANGED
@@ -22,7 +22,7 @@ Create an initializer at `config/initializers/foam.rb`:
22
22
 
23
23
  ```ruby
24
24
  Foam::Ruby.init(
25
- api_key: ENV["FOAM_API_KEY"],
25
+ token: ENV["FOAM_API_TOKEN"],
26
26
  service_name: "my-rails-app"
27
27
  )
28
28
  ```
@@ -39,7 +39,7 @@ That's it. The gem will:
39
39
 
40
40
  ```ruby
41
41
  Foam::Ruby.configure do |c|
42
- c.api_key = ENV["FOAM_API_KEY"]
42
+ c.token = ENV["FOAM_API_TOKEN"]
43
43
  c.service_name = "my-rails-app"
44
44
  c.traces_enabled = true
45
45
  c.logs_enabled = true
@@ -50,7 +50,7 @@ end
50
50
 
51
51
  | Variable | Description | Default |
52
52
  |---|---|---|
53
- | `FOAM_API_KEY` | Your Foam API key | — |
53
+ | `FOAM_API_TOKEN` | Your Foam bearer token | — |
54
54
  | `OTEL_SERVICE_NAME` | Service name for telemetry | `rails-app` |
55
55
  | `FOAM_OTEL_ENDPOINT` | OTLP collector endpoint | `https://otel.api.foam.ai` |
56
56
 
@@ -58,7 +58,7 @@ end
58
58
 
59
59
  ```ruby
60
60
  Foam::Ruby.init(
61
- api_key: ENV["FOAM_API_KEY"],
61
+ token: ENV["FOAM_API_TOKEN"],
62
62
  service_name: "my-rails-app",
63
63
  traces: false, # disable trace collection
64
64
  logs: true
@@ -101,7 +101,7 @@ Pass extra OpenTelemetry instrumentations:
101
101
 
102
102
  ```ruby
103
103
  Foam::Ruby.init(
104
- api_key: ENV["FOAM_API_KEY"],
104
+ token: ENV["FOAM_API_TOKEN"],
105
105
  service_name: "my-rails-app",
106
106
  instrumentations: [
107
107
  "OpenTelemetry::Instrumentation::Sidekiq",
@@ -5,12 +5,12 @@ module Foam
5
5
  class Configuration
6
6
  FOAM_OTEL_ENDPOINT = "https://otel.api.foam.ai"
7
7
 
8
- attr_accessor :api_key, :service_name, :endpoint,
8
+ attr_accessor :token, :service_name, :endpoint,
9
9
  :traces_enabled, :logs_enabled,
10
10
  :additional_instrumentations
11
11
 
12
12
  def initialize
13
- @api_key = ENV["FOAM_API_KEY"]
13
+ @token = ENV["FOAM_API_TOKEN"]
14
14
  @service_name = ENV.fetch("OTEL_SERVICE_NAME", "rails-app")
15
15
  @endpoint = ENV.fetch("FOAM_OTEL_ENDPOINT", FOAM_OTEL_ENDPOINT)
16
16
  @traces_enabled = true
@@ -19,7 +19,7 @@ module Foam
19
19
  end
20
20
 
21
21
  def otel_headers
22
- { "Authorization" => "Bearer #{api_key}" }
22
+ { "Authorization" => "Bearer #{token}" }
23
23
  end
24
24
 
25
25
  def traces_endpoint
@@ -31,7 +31,7 @@ module Foam
31
31
  end
32
32
 
33
33
  def valid?
34
- !api_key.nil? && !api_key.empty?
34
+ !token.nil? && !token.empty?
35
35
  end
36
36
  end
37
37
  end
@@ -2,6 +2,7 @@
2
2
 
3
3
  require "opentelemetry/sdk"
4
4
  require "opentelemetry-exporter-otlp"
5
+ require "opentelemetry-exporter-otlp-logs"
5
6
  require "opentelemetry-logs-api"
6
7
  require "opentelemetry-logs-sdk"
7
8
 
@@ -28,20 +29,12 @@ module Foam
28
29
  )
29
30
  )
30
31
 
31
- c.use "OpenTelemetry::Instrumentation::Rack"
32
- c.use "OpenTelemetry::Instrumentation::ActionPack"
33
- c.use "OpenTelemetry::Instrumentation::ActiveRecord"
34
- c.use "OpenTelemetry::Instrumentation::ActiveSupport"
35
- c.use "OpenTelemetry::Instrumentation::Rails"
36
-
37
- config.additional_instrumentations.each do |instrumentation|
38
- c.use instrumentation
39
- end
32
+ c.use_all
40
33
  end
41
34
  end
42
35
 
43
36
  def configure_logs(config)
44
- exporter = OpenTelemetry::Exporter::OTLP::LogRecordExporter.new(
37
+ exporter = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(
45
38
  endpoint: config.logs_endpoint,
46
39
  headers: config.otel_headers
47
40
  )
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Foam
4
4
  module Ruby
5
- VERSION = "0.1.0.alpha1"
5
+ VERSION = "0.1.0.alpha2"
6
6
  end
7
7
  end
data/lib/foam/ruby.rb CHANGED
@@ -20,9 +20,9 @@ module Foam
20
20
  configuration
21
21
  end
22
22
 
23
- def init(api_key: nil, service_name: nil, endpoint: nil, **options)
23
+ def init(token: nil, service_name: nil, endpoint: nil, **options)
24
24
  configure do |c|
25
- c.api_key = api_key if api_key
25
+ c.token = token if token
26
26
  c.service_name = service_name if service_name
27
27
  c.endpoint = endpoint if endpoint
28
28
  c.traces_enabled = options.fetch(:traces, true)
@@ -31,7 +31,7 @@ module Foam
31
31
  end
32
32
 
33
33
  unless configuration.valid?
34
- warn "[foam-ruby] Missing api_key — set FOAM_API_KEY or pass api_key: to Foam::Ruby.init"
34
+ warn "[foam-ruby] Missing token — set FOAM_API_TOKEN or pass token: to Foam::Ruby.init"
35
35
  return
36
36
  end
37
37
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: foam-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.alpha1
4
+ version: 0.1.0.alpha2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Foam
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0.29'
55
+ - !ruby/object:Gem::Dependency
56
+ name: opentelemetry-exporter-otlp-logs
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '0.3'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '0.3'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: opentelemetry-logs-api
57
71
  requirement: !ruby/object:Gem::Requirement