lib/triglav/agent/base/processor.rb in triglav-agent-1.0.0.pre2 vs lib/triglav/agent/base/processor.rb in triglav-agent-1.0.0.rc1
- old
+ new
@@ -1,7 +1,8 @@
require 'parallel'
require 'connection_pool'
+require 'triglav/agent/status'
module Triglav::Agent
module Base
# Triglav agent processor class.
#
@@ -30,11 +31,11 @@
Parallel.each(resources, parallel_opts) do |resource|
raise Parallel::Break if stopped?
events = nil
begin
@connection_pool.with do |connection|
- monitor = monitor_class.new(connection, resource)
+ monitor = monitor_class.new(connection, resource_uri_prefix, resource)
monitor.process do |_events|
events = _events
$logger.info { "send_messages:#{events.map(&:to_hash).to_json}" }
@api_client_pool.with {|api_client| api_client.send_messages(events) }
end
@@ -67,9 +68,11 @@
connection_class.new(get_connection_info(resource_uri_prefix))
}
@api_client_pool = ConnectionPool.new(connection_pool_opts) {
ApiClient.new # renew connection
}
+ resource_uris = resources.map {|resource| resource.uri.to_sym }
+ Status.select_resource_uris!(resource_uri_prefix, resource_uris)
@mutex = Mutex.new
end
def after_process
@connection_pool.shutdown {|conn| conn.close rescue nil }