class Async::Container::Notify::Client
A process readiness protocol (e.g. ‘sd_notify`) is a simple protocol for a child process to notify the parent process that it is ready (e.g. to accept connections, to process requests, etc). This can help dependency-based startup systems to start services in the correct order, and to handle failures gracefully.
Represents a client that can send messages to the parent controller in order to notify it of readiness, status changes, etc.
def error!(text, **message)
@parameters text [String] The details of the error condition.
Notify the parent controller of an error condition.
def error!(text, **message) send(status: text, **message) end
def ready!(**message)
Notify the parent controller that the child has become ready, with a brief status message.
def ready!(**message) send(ready: true, **message) end
def reloading!(**message)
Notify the parent controller that the child is reloading.
def reloading!(**message) message[:ready] = false message[:reloading] = true message[:status] ||= "Reloading..." send(**message) end
def restarting!(**message)
Notify the parent controller that the child is restarting.
def restarting!(**message) message[:ready] = false message[:reloading] = true message[:status] ||= "Restarting..." send(**message) end
def status!(text)
Notify the parent controller of a status change.
def status!(text) send(status: text) end
def stopping!(**message)
Notify the parent controller that the child is stopping.
def stopping!(**message) message[:stopping] = true send(**message) end