Class: Smplkit::ManagementClient::LoggersNamespace
- Inherits:
-
Object
- Object
- Smplkit::ManagementClient::LoggersNamespace
- Defined in:
- lib/smplkit/management/client.rb
Instance Method Summary collapse
- #_update_logger(logger) ⇒ Object
- #delete(id) ⇒ Object
- #flush ⇒ Object
- #get(id) ⇒ Object
-
#initialize(api_client) ⇒ LoggersNamespace
constructor
A new instance of LoggersNamespace.
- #list ⇒ Object
- #register(source) ⇒ Object
Constructor Details
#initialize(api_client) ⇒ LoggersNamespace
Returns a new instance of LoggersNamespace.
685 686 687 688 |
# File 'lib/smplkit/management/client.rb', line 685 def initialize(api_client) @api = SmplkitGeneratedClient::Logging::LoggersApi.new(api_client) @buffer = Management::LoggerRegistrationBuffer.new end |
Instance Method Details
#_update_logger(logger) ⇒ Object
734 735 736 737 |
# File 'lib/smplkit/management/client.rb', line 734 def _update_logger(logger) response = ErrorMapping.call { @api.update_logger(logger.id || logger.name, logger_body(logger)) } Smplkit::Logging::Helpers.logger_resource_to_model(self, ResourceShim.from_model(response.data)) end |
#delete(id) ⇒ Object
728 729 730 731 732 |
# File 'lib/smplkit/management/client.rb', line 728 def delete(id) normalized = Smplkit::Logging::Normalize.normalize_logger_name(id) ErrorMapping.call { @api.delete_logger(normalized) } true end |
#flush ⇒ Object
696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 |
# File 'lib/smplkit/management/client.rb', line 696 def flush batch = @buffer.drain return if batch.empty? items = batch.map do |entry| SmplkitGeneratedClient::Logging::LoggerBulkItem.new( id: entry["id"], resolved_level: entry["resolved_level"], level: entry["level"], service: entry["service"], environment: entry["environment"] ) end body = SmplkitGeneratedClient::Logging::LoggerBulkRequest.new(loggers: items) ErrorMapping.call { @api.bulk_register_loggers(body) } rescue StandardError => e Smplkit.debug("registration", "logger flush failed: #{e.class}: #{e.}") end |
#get(id) ⇒ Object
722 723 724 725 726 |
# File 'lib/smplkit/management/client.rb', line 722 def get(id) normalized = Smplkit::Logging::Normalize.normalize_logger_name(id) response = ErrorMapping.call { @api.get_logger(normalized) } Smplkit::Logging::Helpers.logger_resource_to_model(self, ResourceShim.from_model(response.data)) end |
#list ⇒ Object
715 716 717 718 719 720 |
# File 'lib/smplkit/management/client.rb', line 715 def list response = ErrorMapping.call { @api.list_loggers } (response.data || []).map do |r| Smplkit::Logging::Helpers.logger_resource_to_model(self, ResourceShim.from_model(r)) end end |
#register(source) ⇒ Object
690 691 692 693 694 |
# File 'lib/smplkit/management/client.rb', line 690 def register(source) sources = source.is_a?(Array) ? source : [source] sources.each { |s| @buffer.add(s) } flush if @buffer.pending_count >= Management::LOGGER_BATCH_FLUSH_SIZE end |