module Chef::DataCollector::Messages
Public Class Methods
run_end_message(reporter_data)
click to toggle source
Message payload that is sent to the DataCollector server at the end of a Chef run.
@param reporter_data [Hash] Data supplied by the Reporter, such as run_status, resource counts, etc.
@return [Hash] A hash containing the run end message data.
# File lib/chef/data_collector/messages.rb, line 60 def self.run_end_message(reporter_data) run_status = reporter_data[:run_status] message = { "chef_server_fqdn" => chef_server_fqdn, "entity_uuid" => node_uuid, "expanded_run_list" => reporter_data[:expanded_run_list], "id" => run_status.run_id, "message_version" => "1.1.0", "message_type" => "run_converge", "node" => run_status.node, "node_name" => run_status.node.name, "organization_name" => organization, "resources" => reporter_data[:resources].map(&:report_data), "run_id" => run_status.run_id, "run_list" => run_status.node.run_list.for_json, "policy_name" => run_status.node.policy_name, "policy_group" => run_status.node.policy_group, "start_time" => run_status.start_time.utc.iso8601, "end_time" => run_status.end_time.utc.iso8601, "source" => collector_source, "status" => reporter_data[:status], "total_resource_count" => reporter_data[:resources].count, "updated_resource_count" => reporter_data[:resources].select { |r| r.report_data["status"] == "updated" }.count, "deprecations" => reporter_data[:deprecations], } if run_status.exception message["error"] = { "class" => run_status.exception.class, "message" => run_status.exception.message, "backtrace" => run_status.exception.backtrace, "description" => reporter_data[:error_descriptions], } end message end
run_start_message(run_status)
click to toggle source
Message payload that is sent to the DataCollector server at the start of a Chef run.
@param run_status [Chef::RunStatus] The RunStatus instance for this node/run.
@return [Hash] A hash containing the run start message data.
# File lib/chef/data_collector/messages.rb, line 37 def self.run_start_message(run_status) { "chef_server_fqdn" => chef_server_fqdn, "entity_uuid" => node_uuid, "id" => run_status.run_id, "message_version" => "1.0.0", "message_type" => "run_start", "node_name" => run_status.node.name, "organization_name" => organization, "run_id" => run_status.run_id, "source" => collector_source, "start_time" => run_status.start_time.utc.iso8601, } end