From 1e6794d0d57ecf63469891d2ce7cc9a4c560a268 Mon Sep 17 00:00:00 2001 From: Andrei Bondarev Date: Tue, 1 Oct 2024 17:47:07 -0400 Subject: [PATCH] Constructor accepts logger: parameter --- lib/qdrant/client.rb | 7 +++++-- spec/qdrant/client_spec.rb | 10 ++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/lib/qdrant/client.rb b/lib/qdrant/client.rb index fac7fe2..a744384 100644 --- a/lib/qdrant/client.rb +++ b/lib/qdrant/client.rb @@ -7,7 +7,7 @@ module Qdrant class Client extend Forwardable - attr_reader :url, :api_key, :adapter, :raise_error + attr_reader :url, :api_key, :adapter, :raise_error, :logger def_delegators :service, :telemetry, :metrics, :locks, :set_lock @@ -15,12 +15,14 @@ def initialize( url:, api_key: nil, adapter: Faraday.default_adapter, - raise_error: false + raise_error: false, + logger: nil ) @url = url @api_key = api_key @adapter = adapter @raise_error = raise_error + @logger = logger || Logger.new($stdout) end def connection @@ -29,6 +31,7 @@ def connection faraday.headers["api-key"] = api_key end faraday.request :json + faraday.response :logger, @logger, {headers: true, bodies: true, errors: true} faraday.response :raise_error if raise_error faraday.response :json, content_type: /\bjson$/ faraday.adapter adapter diff --git a/spec/qdrant/client_spec.rb b/spec/qdrant/client_spec.rb index b964355..0e27bba 100644 --- a/spec/qdrant/client_spec.rb +++ b/spec/qdrant/client_spec.rb @@ -14,6 +14,16 @@ it "creates a client" do expect(client).to be_a(Qdrant::Client) end + + it "accepts a custom logger" do + logger = Logger.new($stdout) + client = Qdrant::Client.new( + url: "localhost:8080", + api_key: "123", + logger: logger + ) + expect(client.logger).to eq(logger) + end end describe "#points" do