mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 06:38:20 +00:00
Remove all of the ZEEK_METRICS_ environment variables
This commit is contained in:
parent
635198793d
commit
e3e806ca23
4 changed files with 13 additions and 22 deletions
15
NEWS
15
NEWS
|
@ -31,14 +31,13 @@ Breaking Changes
|
|||
|
||||
The ``unit`` field has been removed from the telemetry log.
|
||||
|
||||
All of the ``BROKER_METRICS_*`` environment variables have been replaced with
|
||||
``ZEEK_METRICS_*`` versions. This is most prevalent in cluster configurations,
|
||||
where ``ZEEK_METRICS_PORT`` should no longer be set for each node that wants
|
||||
to output telemetry data. Instead, a new ``metrics_port`` option was added to
|
||||
the ``node.cfg`` options and can be used to set the port number. The cluster
|
||||
layout record defined in ``cluster-layout.zeek`` has the same option, and it
|
||||
can be automatically populated by ``zeekctl`` during the ``install`` or
|
||||
``deploy`` commands.
|
||||
All of the ``BROKER_METRICS_*`` environment variables have been removed. Use
|
||||
the equivalent script-level variables for setting configuration settings. For
|
||||
cluster settings, a new ``metrics_port`` option was added to the ``node.cfg``
|
||||
options and can be used to set the port number. The cluster layout record
|
||||
defined in ``cluster-layout.zeek`` has the same option, and it can be
|
||||
automatically populated by ``zeekctl`` during the ``install`` or ``deploy``
|
||||
commands.
|
||||
|
||||
New Functionality
|
||||
-----------------
|
||||
|
|
|
@ -2,8 +2,7 @@
|
|||
##! the lower-level telemetry.bif functions.
|
||||
##!
|
||||
##! Metrics will be exposed through a Prometheus HTTP endpoint when
|
||||
##! enabled by setting :zeek:see:`Telemetry::metrics_port` or using the
|
||||
##! `ZEEK_METRICS_PORT` environment variable.
|
||||
##! enabled by setting :zeek:see:`Telemetry::metrics_port`.
|
||||
|
||||
@load base/misc/version
|
||||
@load base/frameworks/telemetry/options
|
||||
|
|
|
@ -7,14 +7,11 @@ module Telemetry;
|
|||
|
||||
export {
|
||||
## Port used to make metric data available to Prometheus scrapers via
|
||||
## HTTP. Zeek overrides any value provided in zeek_init or earlier at
|
||||
## startup if the environment variable ZEEK_METRICS_PORT is defined.
|
||||
## HTTP.
|
||||
const metrics_port = 0/unknown &redef;
|
||||
|
||||
## ID for the metrics exporter. This is used as the 'endpoint' label
|
||||
## value when exporting data to Prometheus. In a cluster setup, this
|
||||
## defaults to the name of the node in the cluster configuration. Zeek
|
||||
## overrides any value provided in zeek_init or earlier at startup if
|
||||
## the environment variable ZEEK_METRICS_ENDPOINT_NAME is defined.
|
||||
## defaults to the name of the node in the cluster configuration.
|
||||
const metrics_endpoint_name = "" &redef;
|
||||
}
|
||||
|
|
|
@ -28,13 +28,9 @@ Manager::Manager() { prometheus_registry = std::make_shared<prometheus::Registry
|
|||
void Manager::InitPostScript() {
|
||||
// Metrics port setting is used to calculate a URL for prometheus scraping
|
||||
std::string prometheus_url;
|
||||
if ( auto env = getenv("ZEEK_METRICS_PORT") )
|
||||
prometheus_url = util::fmt("localhost:%s", env);
|
||||
else {
|
||||
auto metrics_port = id::find_val("Telemetry::metrics_port")->AsPortVal();
|
||||
if ( metrics_port->Port() != 0 )
|
||||
prometheus_url = util::fmt("localhost:%u", metrics_port->Port());
|
||||
}
|
||||
|
||||
if ( ! prometheus_url.empty() ) {
|
||||
CivetCallbacks* callbacks = nullptr;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue