Class: Smplkit::ManagementClient::LogGroupsNamespace

Inherits:
Object
  • Object
show all
Defined in:
lib/smplkit/management/client.rb

Instance Method Summary collapse

Constructor Details

#initialize(api_client) ⇒ LogGroupsNamespace

Returns a new instance of LogGroupsNamespace.



905
906
907
# File 'lib/smplkit/management/client.rb', line 905

def initialize(api_client)
  @api = SmplkitGeneratedClient::Logging::LogGroupsApi.new(api_client)
end

Instance Method Details

#_create_log_group(group) ⇒ Object



937
938
939
940
# File 'lib/smplkit/management/client.rb', line 937

def _create_log_group(group)
  response = ErrorMapping.call { @api.create_log_group(log_group_body(group)) }
  Smplkit::Logging::Helpers.log_group_resource_to_model(self, ResourceShim.from_model(response.data))
end

#_update_log_group(group) ⇒ Object



942
943
944
945
# File 'lib/smplkit/management/client.rb', line 942

def _update_log_group(group)
  response = ErrorMapping.call { @api.update_log_group(group.key, log_group_body(group)) }
  Smplkit::Logging::Helpers.log_group_resource_to_model(self, ResourceShim.from_model(response.data))
end

#delete(key) ⇒ Object



924
925
926
927
# File 'lib/smplkit/management/client.rb', line 924

def delete(key)
  ErrorMapping.call { @api.delete_log_group(key) }
  true
end

#get(key) ⇒ Object



919
920
921
922
# File 'lib/smplkit/management/client.rb', line 919

def get(key)
  response = ErrorMapping.call { @api.get_log_group(key) }
  Smplkit::Logging::Helpers.log_group_resource_to_model(self, ResourceShim.from_model(response.data))
end

#get_group_entry(key) ⇒ Object



957
958
959
960
# File 'lib/smplkit/management/client.rb', line 957

def get_group_entry(key)
  response = ErrorMapping.call { @api.get_log_group(key) }
  group_entry_from_resource(ResourceShim.from_model(response.data))
end

#list(page_number: nil, page_size: nil) ⇒ Object



909
910
911
912
913
914
915
916
917
# File 'lib/smplkit/management/client.rb', line 909

def list(page_number: nil, page_size: nil)
  opts = {}
  opts[:page_number] = page_number unless page_number.nil?
  opts[:page_size] = page_size unless page_size.nil?
  response = ErrorMapping.call { @api.list_log_groups(opts) }
  (response.data || []).map do |r|
    Smplkit::Logging::Helpers.log_group_resource_to_model(self, ResourceShim.from_model(r))
  end
end

#list_group_entriesObject

Runtime entry — walks every page and returns an id-keyed Hash of resolution-cache entries (level, group, environments). The group key carries the *parent group id* so the resolution algorithm can walk the chain with the same key shape it uses for loggers.



952
953
954
955
# File 'lib/smplkit/management/client.rb', line 952

def list_group_entries
  rows = PaginatedFetch.collect { |opts| @api.list_log_groups(opts) }
  rows.to_h { |r| group_entry_from_resource(ResourceShim.from_model(r)) }
end

#new_log_group(key, name: nil, level: nil, description: nil, parent: nil) ⇒ Object



929
930
931
932
933
934
935
# File 'lib/smplkit/management/client.rb', line 929

def new_log_group(key, name: nil, level: nil, description: nil, parent: nil)
  Smplkit::Logging::SmplLogGroup.new(
    self, key: key, name: name || Smplkit::Helpers.key_to_display_name(key),
          level: level && Smplkit::LogLevel.coerce(level), description: description,
          parent_id: parent.is_a?(Smplkit::Logging::SmplLogGroup) ? parent.key : parent
  )
end