Skip to content

Commit e53e62f

Browse files
Merge pull request #17 from patterns-ai-core/constructor-accepts-logger
Constructor accepts `logger:` parameter
2 parents f1e51f2 + 1e6794d commit e53e62f

File tree

2 files changed

+15
-2
lines changed

2 files changed

+15
-2
lines changed

lib/qdrant/client.rb

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,20 +7,22 @@ module Qdrant
77
class Client
88
extend Forwardable
99

10-
attr_reader :url, :api_key, :adapter, :raise_error
10+
attr_reader :url, :api_key, :adapter, :raise_error, :logger
1111

1212
def_delegators :service, :telemetry, :metrics, :locks, :set_lock
1313

1414
def initialize(
1515
url:,
1616
api_key: nil,
1717
adapter: Faraday.default_adapter,
18-
raise_error: false
18+
raise_error: false,
19+
logger: nil
1920
)
2021
@url = url
2122
@api_key = api_key
2223
@adapter = adapter
2324
@raise_error = raise_error
25+
@logger = logger || Logger.new($stdout)
2426
end
2527

2628
def connection
@@ -29,6 +31,7 @@ def connection
2931
faraday.headers["api-key"] = api_key
3032
end
3133
faraday.request :json
34+
faraday.response :logger, @logger, {headers: true, bodies: true, errors: true}
3235
faraday.response :raise_error if raise_error
3336
faraday.response :json, content_type: /\bjson$/
3437
faraday.adapter adapter

spec/qdrant/client_spec.rb

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,16 @@
1414
it "creates a client" do
1515
expect(client).to be_a(Qdrant::Client)
1616
end
17+
18+
it "accepts a custom logger" do
19+
logger = Logger.new($stdout)
20+
client = Qdrant::Client.new(
21+
url: "localhost:8080",
22+
api_key: "123",
23+
logger: logger
24+
)
25+
expect(client.logger).to eq(logger)
26+
end
1727
end
1828

1929
describe "#points" do

0 commit comments

Comments
 (0)