diff --git a/CHANGELOG.md b/CHANGELOG.md index 757dc43db1d..37867f8555a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## v0.38.1 + +Released on 2024-06-19 + +### Major Changes + +* new(metrics): enable plugins metrics [[#3228](https://github.com/falcosecurity/falco/pull/3228)] - [@mrgian](https://github.com/mrgian) + + +### Minor Changes + +* cleanup(falco): clarify that --print variants only affect syscalls [[#3238](https://github.com/falcosecurity/falco/pull/3238)] - [@LucaGuerra](https://github.com/LucaGuerra) +* update(engine): enable -p option for all sources, -pk, -pc etc only for syscall sources [[#3239](https://github.com/falcosecurity/falco/pull/3239)] - [@LucaGuerra](https://github.com/LucaGuerra) + + +### Bug Fixes + +* fix(engine): enable output substitution only for syscall rules, prevent engine from exiting with validation errors when a plugin is loaded and -pc/pk is specified [[#3236](https://github.com/falcosecurity/falco/pull/3236)] - [@mrgian](https://github.com/mrgian) +* fix(metrics): allow each metric output channel to be selected independently [[#3232](https://github.com/falcosecurity/falco/pull/3232)] - [@incertum](https://github.com/incertum) +* fix(userspace/falco): fixed `falco_metrics::to_text` implementation when running with plugins [[#3230](https://github.com/falcosecurity/falco/pull/3230)] - [@FedeDP](https://github.com/FedeDP) + + + +### Statistics + +| MERGED PRS | NUMBER | +|-----------------|--------| +| Not user-facing | 0 | +| Release note | 6 | +| Total | 6 | + ## v0.38.0 Released on 2024-05-30 diff --git a/cmake/modules/driver.cmake b/cmake/modules/driver.cmake index c61e68e26e6..8bfb77d442d 100644 --- a/cmake/modules/driver.cmake +++ b/cmake/modules/driver.cmake @@ -34,8 +34,8 @@ else() # In case you want to test against another driver version (or branch, or commit) just pass the variable - # ie., `cmake -DDRIVER_VERSION=dev ..` if(NOT DRIVER_VERSION) - set(DRIVER_VERSION "774db6b944cb4c7bca692400cec89cf14312cac2") - set(DRIVER_CHECKSUM "SHA256=61984089d71cc96e4fdf1ffe82b4da16802a0228859d7f15745173f0c9673b5e") + set(DRIVER_VERSION "473bf06780abf9b00923c90d779e4ff16f19903a") + set(DRIVER_CHECKSUM "SHA256=aa45432acd385881365a8aee7bfe1982fd6278aa7b23466d6864c2ffda5216dd") endif() # cd /path/to/build && cmake /path/to/source diff --git a/cmake/modules/falcosecurity-libs.cmake b/cmake/modules/falcosecurity-libs.cmake index 06d17c93859..1f5b3978c27 100644 --- a/cmake/modules/falcosecurity-libs.cmake +++ b/cmake/modules/falcosecurity-libs.cmake @@ -35,8 +35,8 @@ else() # In case you want to test against another falcosecurity/libs version (or branch, or commit) just pass the variable - # ie., `cmake -DFALCOSECURITY_LIBS_VERSION=dev ..` if(NOT FALCOSECURITY_LIBS_VERSION) - set(FALCOSECURITY_LIBS_VERSION "774db6b944cb4c7bca692400cec89cf14312cac2") - set(FALCOSECURITY_LIBS_CHECKSUM "SHA256=61984089d71cc96e4fdf1ffe82b4da16802a0228859d7f15745173f0c9673b5e") + set(FALCOSECURITY_LIBS_VERSION "473bf06780abf9b00923c90d779e4ff16f19903a") + set(FALCOSECURITY_LIBS_CHECKSUM "SHA256=aa45432acd385881365a8aee7bfe1982fd6278aa7b23466d6864c2ffda5216dd") endif() # cd /path/to/build && cmake /path/to/source diff --git a/userspace/engine/falco_engine_version.h b/userspace/engine/falco_engine_version.h index 48c50af3f17..ce3585bb2c7 100644 --- a/userspace/engine/falco_engine_version.h +++ b/userspace/engine/falco_engine_version.h @@ -20,7 +20,7 @@ limitations under the License. // The version of this Falco engine #define FALCO_ENGINE_VERSION_MAJOR 0 -#define FALCO_ENGINE_VERSION_MINOR 41 +#define FALCO_ENGINE_VERSION_MINOR 42 #define FALCO_ENGINE_VERSION_PATCH 0 #define FALCO_ENGINE_VERSION \ @@ -34,4 +34,4 @@ limitations under the License. // It represents the fields supported by this version of Falco, // the event types, and the underlying driverevent schema. It's used to // detetect changes in engine version in our CI jobs. -#define FALCO_ENGINE_CHECKSUM "9246c7739677ea9ec5ea3a1928755f83a1149e693cdb6d7dab4612f919a30aa3" +#define FALCO_ENGINE_CHECKSUM "786745197f42d685b536581ddbb5eab8500939a3f6ae67cfa23a212da10e423c" diff --git a/userspace/falco/app/actions/helpers_inspector.cpp b/userspace/falco/app/actions/helpers_inspector.cpp index f39ceb7491b..0767500170f 100644 --- a/userspace/falco/app/actions/helpers_inspector.cpp +++ b/userspace/falco/app/actions/helpers_inspector.cpp @@ -48,11 +48,6 @@ falco::app::run_result falco::app::actions::open_live_inspector( { try { - if((s.config->m_metrics_flags & METRICS_V2_STATE_COUNTERS)) - { - inspector->set_sinsp_stats_v2_enabled(); - } - if(s.config->m_falco_libs_thread_table_size > 0) { // Default value is set in libs as part of the sinsp_thread_manager setup diff --git a/userspace/falco/app/actions/init_inspectors.cpp b/userspace/falco/app/actions/init_inspectors.cpp index 9c52383667d..672aaa23939 100644 --- a/userspace/falco/app/actions/init_inspectors.cpp +++ b/userspace/falco/app/actions/init_inspectors.cpp @@ -109,15 +109,29 @@ falco::app::run_result falco::app::actions::init_inspectors(falco::app::state& s std::unordered_set used_plugins; const auto& all_plugins = s.offline_inspector->get_plugin_manager()->plugins(); + if((s.config->m_metrics_flags & METRICS_V2_STATE_COUNTERS)) + { + + } + for (const auto &src : s.loaded_sources) { auto src_info = s.source_infos.at(src); // in capture mode, every event source uses the offline inspector. // in live mode, we create a new inspector for each event source - src_info->inspector = s.is_capture_mode() - ? s.offline_inspector - : std::make_shared(); + if (s.is_capture_mode()) + { + src_info->inspector = s.offline_inspector; + } + else + { + src_info->inspector = std::make_shared(false, + "", + "", + "", + s.config->m_metrics_flags & METRICS_V2_STATE_COUNTERS); + } // do extra preparation for the syscall source if (src == falco_common::syscall_source)