code: def logs_at_level(self, level):
      return [
          r.message
          for r in self.log_handler.records
          if r.level == level
      ]
  
imports: import logbook
  import numpy
  import pandas
  from pandas.util.testing import assert_series_equal
  from zipline.data.data_portal import DataPortal
  from zipline.errors import BenchmarkAssetNotAvailableTooEarly, BenchmarkAssetNotAvailableTooLate, InvalidBenchmarkAsset
  from zipline.sources.benchmark_source import BenchmarkSource
  from zipline.utils.run_algo import BenchmarkSpec
  from zipline.testing import MockDailyBarReader, create_minute_bar_data, parameter_space, tmp_bcolz_equity_minute_bar_reader
  from zipline.testing.predicates import assert_equal
  from zipline.testing.fixtures import WithAssetFinder, WithDataPortal, WithSimParams, WithTmpDir, WithTradingCalendars, ZiplineTestCase
  from zipline.testing.core import make_test_handler
label_desc: Use image node_id 4 for calling the BenchmarkSpecTestCase obj's underlying member method code with example usage: obj.logs_at_level(level) and returns: unknown