Module: LogStruct::Log

Extended by:
T::Sig
Defined in:
lib/log_struct/log.rb,
lib/log_struct/log/sql.rb,
lib/log_struct/log/ahoy.rb,
lib/log_struct/log/error.rb,
lib/log_struct/log/plain.rb,
lib/log_struct/log/request.rb,
lib/log_struct/log/sidekiq.rb,
lib/log_struct/log/good_job.rb,
lib/log_struct/log/security.rb,
lib/log_struct/log/active_job.rb,
lib/log_struct/log/puma/start.rb,
lib/log_struct/log/carrierwave.rb,
lib/log_struct/log/dotenv/load.rb,
lib/log_struct/log/dotenv/save.rb,
lib/log_struct/log/good_job/log.rb,
lib/log_struct/log/shrine/exist.rb,
lib/log_struct/log/action_mailer.rb,
lib/log_struct/log/dotenv/update.rb,
lib/log_struct/log/puma/shutdown.rb,
lib/log_struct/log/shrine/delete.rb,
lib/log_struct/log/shrine/upload.rb,
lib/log_struct/log/active_storage.rb,
lib/log_struct/log/dotenv/restore.rb,
lib/log_struct/log/good_job/error.rb,
lib/log_struct/log/good_job/start.rb,
lib/log_struct/log/good_job/finish.rb,
lib/log_struct/log/shrine/download.rb,
lib/log_struct/log/shrine/metadata.rb,
lib/log_struct/log/active_job/start.rb,
lib/log_struct/log/good_job/enqueue.rb,
lib/log_struct/log/active_job/finish.rb,
lib/log_struct/log/good_job/schedule.rb,
lib/log_struct/log/security/ip_spoof.rb,
lib/log_struct/log/active_job/enqueue.rb,
lib/log_struct/log/active_storage/url.rb,
lib/log_struct/log/carrierwave/delete.rb,
lib/log_struct/log/carrierwave/upload.rb,
lib/log_struct/log/action_mailer/error.rb,
lib/log_struct/log/active_job/schedule.rb,
lib/log_struct/shared/serialize_common.rb,
lib/log_struct/log/active_storage/exist.rb,
lib/log_struct/log/carrierwave/download.rb,
lib/log_struct/log/active_storage/delete.rb,
lib/log_struct/log/active_storage/stream.rb,
lib/log_struct/log/active_storage/upload.rb,
lib/log_struct/log/security/blocked_host.rb,
lib/log_struct/shared/add_request_fields.rb,
lib/log_struct/log/action_mailer/delivery.rb,
lib/log_struct/log/action_mailer/delivered.rb,
lib/log_struct/log/active_storage/download.rb,
lib/log_struct/log/active_storage/metadata.rb,
lib/log_struct/log/security/csrf_violation.rb,
lib/log_struct/log/active_model_serializers.rb,
lib/log_struct/shared/serialize_common_public.rb,
lib/log_struct/shared/interfaces/common_fields.rb,
lib/log_struct/shared/interfaces/request_fields.rb,
lib/log_struct/shared/merge_additional_data_fields.rb,
lib/log_struct/shared/interfaces/public_common_fields.rb,
lib/log_struct/shared/interfaces/additional_data_field.rb

Defined Under Namespace

Modules: Interfaces, SerializeCommonPublic, Shared Classes: ActionMailer, ActiveJob, ActiveModelSerializers, ActiveStorage, Ahoy, CarrierWave, Dotenv, Error, GoodJob, Plain, Puma, Request, SQL, Security, Shrine, Sidekiq

Class Method Summary collapse

Class Method Details

.from_exception(source, ex, additional_data = {}, timestamp = Time.now) ⇒ LogStruct::Log::Error

Build an Error log from an exception with optional context and timestamp

Parameters:

  • source (Source)
  • ex (StandardError)
  • additional_data (Hash{String, Symbol => T.untyped}) (defaults to: {})
  • timestamp (Time) (defaults to: Time.now)

Returns:



31
32
33
34
35
36
37
38
39
40
# File 'lib/log_struct/log.rb', line 31

def self.from_exception(source, ex, additional_data = {}, timestamp = Time.now)
  LogStruct::Log::Error.new(
    source: source,
    error_class: ex.class,
    message: ex.message,
    backtrace: ex.backtrace,
    additional_data: additional_data,
    timestamp: timestamp
  )
end