Module: Smplkit::Logging::Helpers

Defined in:
lib/smplkit/logging/helpers.rb

Class Method Summary collapse

Class Method Details

.build_log_group_body(group) ⇒ Object



56
57
58
59
60
61
62
63
64
65
66
# File 'lib/smplkit/logging/helpers.rb', line 56

def build_log_group_body(group)
  attributes = {
    "key" => group.key,
    "name" => group.name,
    "level" => group.level&.to_s,
    "description" => group.description,
    "parent_id" => group.parent_id,
    "environments" => group.environments
  }.compact
  { "data" => { "type" => "log_group", "id" => group.key, "attributes" => attributes } }
end

.build_logger_body(logger) ⇒ Object



42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/smplkit/logging/helpers.rb', line 42

def build_logger_body(logger)
  attributes = {
    "name" => logger.name,
    "resolved_level" => logger.resolved_level&.to_s,
    "level" => logger.level&.to_s,
    "service" => logger.service,
    "environment" => logger.environment,
    "log_group_id" => logger.log_group_id,
    "managed" => logger.managed,
    "description" => logger.description
  }.compact
  { "data" => { "type" => "logger", "id" => logger.id, "attributes" => attributes } }
end

.log_group_resource_to_model(client, resource) ⇒ Object



26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/smplkit/logging/helpers.rb', line 26

def log_group_resource_to_model(client, resource)
  attrs = resource["attributes"] || {}
  SmplLogGroup.new(
    client,
    id: resource["id"] || attrs["id"],
    key: attrs["key"] || resource["id"],
    name: attrs["name"],
    level: attrs["level"] && LogLevel.coerce(attrs["level"]),
    description: attrs["description"],
    parent_id: attrs["parent_id"],
    environments: attrs["environments"] || {},
    created_at: attrs["created_at"],
    updated_at: attrs["updated_at"]
  )
end

.logger_resource_to_model(client, resource) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/smplkit/logging/helpers.rb', line 8

def logger_resource_to_model(client, resource)
  attrs = resource["attributes"] || {}
  SmplLogger.new(
    client,
    id: resource["id"] || attrs["id"],
    name: attrs["name"],
    resolved_level: attrs["resolved_level"] && LogLevel.coerce(attrs["resolved_level"]),
    level: attrs["level"] && LogLevel.coerce(attrs["level"]),
    service: attrs["service"],
    environment: attrs["environment"],
    log_group_id: attrs["log_group_id"],
    managed: attrs.fetch("managed", true),
    description: attrs["description"],
    created_at: attrs["created_at"],
    updated_at: attrs["updated_at"]
  )
end