-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Description
Describe the bug
I believe the metrics use the display_collection to calculate metrics based on collections which make this field required for the API to function, this is required even with the config log_metrics = false
Was this intentional? If so we need to add some docs to and instruct users to create a display_collection field on their schema, and also explain what this field is for.
To Reproduce
Steps to reproduce the behavior:
- Setup a new API using the version v3.6.3 of the SJ engine.
- Make sure the Record schema doesn't have a Display Collection field
- Harvest some records
- Perform a search
- You should see a 500 error saying that the method display_collection doesn't exist.
Expected behavior
Maybe this method should also check for the config log_metrics value?
https://github.com/DigitalNZ/supplejack_api/blob/0b904b55f46d091fb9c5947ea90e362f33a448d5/app/controllers/supplejack_api/concerns/ignore_metrics.rb
Screenshots
n/a
Logs
NoMethodError (undefined method `display_collection' for #<SupplejackApi::ApiRecord::RecordFragment:0x00007f9daf6adb88>
Did you mean? display_date):
mongoid (7.0.6) lib/mongoid/attributes/dynamic.rb:138:in `method_missing'
/Users/gus/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/bundler/gems/supplejack_api-fc4bdfffce1a/app/models/supplejack_api/support/fragment_helpers.rb:81:in `public_send'
/Users/gus/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/bundler/gems/supplejack_api-fc4bdfffce1a/app/models/supplejack_api/support/fragment_helpers.rb:81:in `method_missing'
/Users/gus/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/bundler/gems/supplejack_api-fc4bdfffce1a/app/controllers/supplejack_api/concerns/records_controller_metrics.rb:19:in `block in log_search
'
/Users/gus/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/bundler/gems/supplejack_api-fc4bdfffce1a/app/controllers/supplejack_api/concerns/records_controller_metrics.rb:18:in `map'
/Users/gus/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/bundler/gems/supplejack_api-fc4bdfffce1a/app/controllers/supplejack_api/concerns/records_controller_metrics.rb:18:in `log_search'
activesupport (5.1.7) lib/active_support/callbacks.rb:413:in `block in make_lambda'
activesupport (5.1.7) lib/active_support/callbacks.rb:235:in `block in halting_and_conditional'
activesupport (5.1.7) lib/active_support/callbacks.rb:511:in `block in invoke_after'
activesupport (5.1.7) lib/active_support/callbacks.rb:511:in `each'
...
Configuration files
SupplejackApi.setup do |config|
config.record_class = SupplejackApi::Record
config.preview_record_class = SupplejackApi::PreviewRecord
config.log_metrics = false
config.record_batch_size_for_mongo_queries_and_solr_indexing = 500
endEnvironment:
docker
Additional context
n/a
Metadata
Metadata
Assignees
Labels
No labels