Class: Lepus::ProcessRegistry::MessageBuilder
- Inherits:
-
Object
- Object
- Lepus::ProcessRegistry::MessageBuilder
- Defined in:
- lib/lepus/process_registry/message_builder.rb
Overview
Builds heartbeat messages for RabbitMQ publishing.
Constant Summary collapse
- VERSION =
"1.0"
Instance Method Summary collapse
- #build_deregister ⇒ Object
- #build_heartbeat ⇒ Object
-
#initialize(process, metrics: {}) ⇒ MessageBuilder
constructor
A new instance of MessageBuilder.
- #to_json ⇒ Object
Constructor Details
#initialize(process, metrics: {}) ⇒ MessageBuilder
Returns a new instance of MessageBuilder.
11 12 13 14 |
# File 'lib/lepus/process_registry/message_builder.rb', line 11 def initialize(process, metrics: {}) @process = process @metrics = metrics end |
Instance Method Details
#build_deregister ⇒ Object
25 26 27 28 29 30 31 32 |
# File 'lib/lepus/process_registry/message_builder.rb', line 25 def build_deregister { type: "deregister", version: VERSION, process_id: @process.id, timestamp: Time.now.iso8601(6) } end |
#build_heartbeat ⇒ Object
16 17 18 19 20 21 22 23 |
# File 'lib/lepus/process_registry/message_builder.rb', line 16 def build_heartbeat { type: "heartbeat", version: VERSION, process: process_data, metrics: metrics_data } end |
#to_json ⇒ Object
34 35 36 |
# File 'lib/lepus/process_registry/message_builder.rb', line 34 def to_json JSON.generate(build_heartbeat) end |