Class: LogStruct::Log::ActiveModelSerializers

Inherits:
T::Struct
  • Object
show all
Extended by:
T::Sig
Includes:
Interfaces::CommonFields, Shared::SerializeCommon
Defined in:
lib/log_struct/log/active_model_serializers.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Shared::SerializeCommon

#as_json, #serialize, #serialize_common

Methods included from Interfaces::CommonFields

#serialize

Constructor Details

#initialize(source: Source::Rails, event: Event::Generate, timestamp:, level: Level::Info, message:, serializer: nil, adapter: nil, resource_class: nil, duration_ms:) ⇒ void

Parameters:

  • source (Source::Rails) (defaults to: Source::Rails)

    Shared/common fields

  • event (Event) (defaults to: Event::Generate)
  • timestamp (Time)
  • level (Level) (defaults to: Level::Info)
  • message (String)

    Event-specific fields

  • serializer (String, nil) (defaults to: nil)
  • adapter (String, nil) (defaults to: nil)
  • resource_class (String, nil) (defaults to: nil)
  • duration_ms (Float)


# File ''

const :source, Source::Rails, default: Source::Rails
const :event, Event, default: Event::Generate
const :timestamp, Time, factory: -> { Time.now }
const :level, Level, default: Level::Info
const :message, String
const :serializer, T.nilable(String), default: nil
const :adapter, T.nilable(String), default: nil
const :resource_class, T.nilable(String), default: nil
const :duration_ms, Float

Instance Attribute Details

#adapterString? (readonly)

Returns the value of prop adapter.

Returns:

  • (String, nil)


# File ''

const :adapter, T.nilable(String), default: nil

#duration_msFloat (readonly)

Returns the value of prop duration_ms.

Returns:

  • (Float)


# File ''

const :duration_ms, Float

#eventEvent (readonly)

Returns the value of prop event.

Returns:



# File ''

const :event, Event, default: Event::Generate

#levelLevel (readonly)

Returns the value of prop level.

Returns:



# File ''

const :level, Level, default: Level::Info

#messageString (readonly)

Event-specific fields

Returns:

  • (String)


# File ''

const :message, String

#resource_classString? (readonly)

Returns the value of prop resource_class.

Returns:

  • (String, nil)


# File ''

const :resource_class, T.nilable(String), default: nil

#serializerString? (readonly)

Returns the value of prop serializer.

Returns:

  • (String, nil)


# File ''

const :serializer, T.nilable(String), default: nil

#sourceSource::Rails (readonly)

Shared/common fields

Returns:



# File ''

const :source, Source::Rails, default: Source::Rails

#timestampTime (readonly)

Returns the value of prop timestamp.

Returns:

  • (Time)


# File ''

const :timestamp, Time, factory: -> { Time.now }

Instance Method Details

#to_hHash{LogStruct::LogField => T.untyped}

Returns:



43
44
45
46
47
48
49
50
51
# File 'lib/log_struct/log/active_model_serializers.rb', line 43

def to_h
  h = T.let({}, T::Hash[LogStruct::LogField, T.untyped])
  h[LogField::Message] = message
  h[LogField::Serializer] = serializer unless serializer.nil?
  h[LogField::Adapter] = adapter unless adapter.nil?
  h[LogField::ResourceClass] = resource_class unless resource_class.nil?
  h[LogField::DurationMs] = duration_ms
  h
end