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.



871
872
873
# File 'lib/smplkit/management/client.rb', line 871

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

Instance Method Details

#_create_log_group(group) ⇒ Object



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

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



908
909
910
911
# File 'lib/smplkit/management/client.rb', line 908

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



890
891
892
893
# File 'lib/smplkit/management/client.rb', line 890

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

#get(key) ⇒ Object



885
886
887
888
# File 'lib/smplkit/management/client.rb', line 885

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



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

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



875
876
877
878
879
880
881
882
883
# File 'lib/smplkit/management/client.rb', line 875

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.



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

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



895
896
897
898
899
900
901
# File 'lib/smplkit/management/client.rb', line 895

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