mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 06:38:20 +00:00

Now that all the logic about establishing connections among nodes has moved to the broker policy script, the setup-connections name seems unfortunate, transition away from it.
46 lines
913 B
Text
46 lines
913 B
Text
##! This script contains the common subscription setup logic.
|
|
@load ./main
|
|
@load ./pools
|
|
|
|
module Cluster;
|
|
|
|
event zeek_init() &priority=-5
|
|
{
|
|
if ( getenv("ZEEKCTL_CHECK_CONFIG") != "" )
|
|
return;
|
|
|
|
local self = nodes[node];
|
|
|
|
for ( i in registered_pools )
|
|
{
|
|
local pool = registered_pools[i];
|
|
|
|
if ( node in pool$nodes )
|
|
Cluster::subscribe(pool$spec$topic);
|
|
}
|
|
|
|
switch ( self$node_type ) {
|
|
case NONE:
|
|
return;
|
|
case CONTROL:
|
|
break;
|
|
case LOGGER:
|
|
Cluster::subscribe(Cluster::logger_topic);
|
|
break;
|
|
case MANAGER:
|
|
Cluster::subscribe(Cluster::manager_topic);
|
|
break;
|
|
case PROXY:
|
|
Cluster::subscribe(Cluster::proxy_topic);
|
|
break;
|
|
case WORKER:
|
|
Cluster::subscribe(Cluster::worker_topic);
|
|
break;
|
|
default:
|
|
Reporter::error(fmt("Unhandled cluster node type: %s", self$node_type));
|
|
return;
|
|
}
|
|
|
|
Cluster::subscribe(nodeid_topic(Cluster::node_id()));
|
|
Cluster::subscribe(node_topic(node));
|
|
}
|