zeek/scripts/base/frameworks/supervisor/api.zeek
2019-10-15 12:59:45 -07:00

35 lines
1.1 KiB
Text

##! The Zeek process supervision API.
# TODO: add proper docs
module Supervisor;
export {
type Status: record {
# TODO: add proper status fields
n: count;
};
type NodeConfig: record {
# TODO: add proper config field
name: string;
};
global status: function(nodes: string &default="all"): Status;
global create: function(config: NodeConfig): string;
global destroy: function(nodes: string): bool;
global restart: function(nodes: string &default="all"): bool;
global Supervisor::stop_request: event();
global Supervisor::status_request: event(id: count, nodes: string);
global Supervisor::status_response: event(id: count, result: Status);
global Supervisor::create_request: event(id: count, config: NodeConfig);
global Supervisor::create_response: event(id: count, result: string);
global Supervisor::destroy_request: event(id: count, nodes: string);
global Supervisor::destroy_response: event(id: count, result: bool);
global Supervisor::restart_request: event(id: count, nodes: string);
global Supervisor::restart_response: event(id: count, result: bool);
}