Class: NitroIntelligence::Reporter
- Inherits:
-
Object
- Object
- NitroIntelligence::Reporter
- Defined in:
- lib/nitro_intelligence/reporter.rb
Instance Method Summary collapse
- #create_dataset_item(attributes) ⇒ Object
-
#initialize(observability_project_slug:) ⇒ Reporter
constructor
A new instance of Reporter.
- #score(trace_id:, name:, value:, id: "#{trace_id}-#{name}") ⇒ Object
Constructor Details
#initialize(observability_project_slug:) ⇒ Reporter
Returns a new instance of Reporter.
7 8 9 10 11 |
# File 'lib/nitro_intelligence/reporter.rb', line 7 def initialize(observability_project_slug:) @observability_project_slug = observability_project_slug @project_client = fetch_project_client @host = NitroIntelligence.config.observability_base_url end |
Instance Method Details
#create_dataset_item(attributes) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/nitro_intelligence/reporter.rb', line 13 def create_dataset_item(attributes) uri = URI("#{@host}/api/public/dataset-items") http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = uri.scheme == "https" request = Net::HTTP::Post.new(uri) request["Content-Type"] = "application/json" request["Authorization"] = "Basic #{@project_client.project.auth_token}" request.body = attributes.to_json http.request(request) end |
#score(trace_id:, name:, value:, id: "#{trace_id}-#{name}") ⇒ Object
26 27 28 29 30 31 32 33 34 |
# File 'lib/nitro_intelligence/reporter.rb', line 26 def score(trace_id:, name:, value:, id: "#{trace_id}-#{name}") @project_client.observability_client.create_score( id:, trace_id:, name:, value:, environment: NitroIntelligence.environment ) end |