refactor(webserver): move metrics endpoint activation under webserver

Signed-off-by: Samuel Gaist <samuel.gaist@idiap.ch>
This commit is contained in:
Samuel Gaist 2024-03-22 15:35:33 +01:00 committed by poiana
parent cd073a033a
commit 968a403cba
4 changed files with 6 additions and 6 deletions

View File

@ -716,6 +716,7 @@ webserver:
# Can be an IPV4 or IPV6 address, defaults to IPV4 # Can be an IPV4 or IPV6 address, defaults to IPV4
listen_address: 0.0.0.0 listen_address: 0.0.0.0
k8s_healthz_endpoint: /healthz k8s_healthz_endpoint: /healthz
metrics_enabled: false
ssl_enabled: false ssl_enabled: false
ssl_certificate: /etc/falco/falco.pem ssl_certificate: /etc/falco/falco.pem
@ -1003,7 +1004,6 @@ metrics:
libbpf_stats_enabled: true libbpf_stats_enabled: true
convert_memory_to_mb: true convert_memory_to_mb: true
include_empty_values: false include_empty_values: false
prometheus_enabled: false
####################################### #######################################
# Falco performance tuning (advanced) # # Falco performance tuning (advanced) #

View File

@ -45,7 +45,7 @@ falco::app::run_result falco::app::actions::start_webserver(falco::app::state& s
+ ssl_option + "\n"); + ssl_option + "\n");
std::vector<libs::metrics::libs_metrics_collector> metrics_collectors; std::vector<libs::metrics::libs_metrics_collector> metrics_collectors;
if (s.config->m_metrics_enabled && s.config->m_metrics_prometheus_enabled) if (s.config->m_metrics_enabled && s.config->m_webserver_metrics_enabled)
{ {
for (const auto& source_info: s.source_infos) for (const auto& source_info: s.source_infos)
{ {

View File

@ -65,6 +65,7 @@ falco_configuration::falco_configuration():
m_webserver_listen_address("0.0.0.0"), m_webserver_listen_address("0.0.0.0"),
m_webserver_k8s_healthz_endpoint("/healthz"), m_webserver_k8s_healthz_endpoint("/healthz"),
m_webserver_ssl_enabled(false), m_webserver_ssl_enabled(false),
m_webserver_metrics_enabled(false),
m_syscall_evt_drop_threshold(.1), m_syscall_evt_drop_threshold(.1),
m_syscall_evt_drop_rate(.03333), m_syscall_evt_drop_rate(.03333),
m_syscall_evt_drop_max_burst(1), m_syscall_evt_drop_max_burst(1),
@ -79,8 +80,7 @@ falco_configuration::falco_configuration():
m_metrics_output_file(""), m_metrics_output_file(""),
m_metrics_flags((METRICS_V2_KERNEL_COUNTERS | METRICS_V2_LIBBPF_STATS | METRICS_V2_RESOURCE_UTILIZATION | METRICS_V2_STATE_COUNTERS)), m_metrics_flags((METRICS_V2_KERNEL_COUNTERS | METRICS_V2_LIBBPF_STATS | METRICS_V2_RESOURCE_UTILIZATION | METRICS_V2_STATE_COUNTERS)),
m_metrics_convert_memory_to_mb(true), m_metrics_convert_memory_to_mb(true),
m_metrics_include_empty_values(false), m_metrics_include_empty_values(false)
m_metrics_prometheus_enabled(false)
{ {
} }
@ -462,6 +462,7 @@ void falco_configuration::load_yaml(const std::string& config_name)
{ {
m_webserver_threadiness = falco::utils::hardware_concurrency(); m_webserver_threadiness = falco::utils::hardware_concurrency();
} }
m_webserver_metrics_enabled = config.get_scalar<bool>("webserver.metrics_enabled", false);
std::list<std::string> syscall_event_drop_acts; std::list<std::string> syscall_event_drop_acts;
config.get_sequence(syscall_event_drop_acts, "syscall_event_drops.actions"); config.get_sequence(syscall_event_drop_acts, "syscall_event_drops.actions");
@ -554,7 +555,6 @@ void falco_configuration::load_yaml(const std::string& config_name)
m_metrics_convert_memory_to_mb = config.get_scalar<bool>("metrics.convert_memory_to_mb", true); m_metrics_convert_memory_to_mb = config.get_scalar<bool>("metrics.convert_memory_to_mb", true);
m_metrics_include_empty_values = config.get_scalar<bool>("metrics.include_empty_values", false); m_metrics_include_empty_values = config.get_scalar<bool>("metrics.include_empty_values", false);
m_metrics_prometheus_enabled = config.get_scalar<bool>("metrics.prometheus_enabled", false);
std::vector<std::string> load_plugins; std::vector<std::string> load_plugins;

View File

@ -133,6 +133,7 @@ public:
std::string m_webserver_k8s_healthz_endpoint; std::string m_webserver_k8s_healthz_endpoint;
bool m_webserver_ssl_enabled; bool m_webserver_ssl_enabled;
std::string m_webserver_ssl_certificate; std::string m_webserver_ssl_certificate;
bool m_webserver_metrics_enabled;
syscall_evt_drop_actions m_syscall_evt_drop_actions; syscall_evt_drop_actions m_syscall_evt_drop_actions;
double m_syscall_evt_drop_threshold; double m_syscall_evt_drop_threshold;
@ -158,7 +159,6 @@ public:
uint32_t m_metrics_flags; uint32_t m_metrics_flags;
bool m_metrics_convert_memory_to_mb; bool m_metrics_convert_memory_to_mb;
bool m_metrics_include_empty_values; bool m_metrics_include_empty_values;
bool m_metrics_prometheus_enabled;
std::vector<plugin_config> m_plugins; std::vector<plugin_config> m_plugins;
// Falco engine // Falco engine