mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 14:48:21 +00:00
Telemetry framework: move BIFs to the primary-bif stage
This moves the Telemetry framework's BIF-defined functionalit from the secondary-BIFs stage to the primary one. That is, this functionality is now available from the end of init-bare.zeek, not only after the end of init-frameworks-and-bifs.zeek. This allows us to use script-layer telemetry in our Zeek's own code that get pulled in during init-frameworks-and-bifs. This change splits up the BIF features into functions, constants, and types, because that's the granularity most workable in Func.cc and NetVar. It also now defines the Telemetry::MetricsType enum once, not redundantly in BIFs and script layer. Due to subtle load ordering issues between the telemetry and cluster frameworks this pushes the redef stage of Telemetry::metrics_port and address into base/frameworks/telemetry/options.zeek, which is loaded sufficiently late in init-frameworks-and-bifs.zeek to sidestep those issues. (When not doing this, the effect is that the redef in telemetry/main.zeek doesn't yet find the cluster-provided values, and Zeek does not end up listening on these ports.) The need to add basic Zeek headers in script_opt/ZAM/ZBody.cc as a side-effect of this is curious, but looks harmless. Also includes baseline updates for the usual btests and adds a few doc strings.
This commit is contained in:
parent
acdd7a7934
commit
71f7e89974
20 changed files with 98 additions and 63 deletions
|
@ -105,4 +105,6 @@ extern void init_builtin_types();
|
|||
#include "packet_analysis.bif.netvar_h"
|
||||
#include "reporter.bif.netvar_h"
|
||||
#include "supervisor.bif.netvar_h"
|
||||
#include "telemetry_consts.bif.netvar_h"
|
||||
#include "telemetry_types.bif.netvar_h"
|
||||
#include "types.bif.netvar_h"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue