class Avo::Services::DebugService

def debug_report(request = nil)

def debug_report(request = nil)
  payload = {}
  hq = Avo::Licensing::HQ.new(request)
  payload[:license_id] = Avo::Current&.license&.id
  payload[:license_valid] = Avo::Current&.license&.valid?
  payload[:license_payload] = Avo::Current&.license&.payload
  payload[:license_response] = Avo::Current&.license&.response
  payload[:hq_payload] = hq&.payload
  payload[:thread_count] = get_thread_count
  payload[:license_abilities] = Avo::Current&.license&.abilities
  payload[:cache_store] = Avo.cache_store&.class&.to_s
  payload[:avo_metadata] = avo_metadata
  payload[:app_timezone] = Time.current.zone
  payload[:cache_key] = Avo::Licensing::HQ.cache_key
  payload[:cache_key_contents] = hq&.cached_response
  payload[:plugins] = Avo.plugin_manager
  payload
rescue => e
  e
end