From 13cff3b6547424541de277a82fa06013d8fa9c3e Mon Sep 17 00:00:00 2001 From: Shizuo Fujita Date: Tue, 20 May 2025 18:21:36 +0900 Subject: [PATCH 1/7] metrics: enable input metrics by default Signed-off-by: Shizuo Fujita --- lib/fluent/root_agent.rb | 2 +- lib/fluent/supervisor.rb | 2 +- lib/fluent/system_config.rb | 2 +- test/config/test_system_config.rb | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/fluent/root_agent.rb b/lib/fluent/root_agent.rb index 6cb60916f5..6c19e9af59 100644 --- a/lib/fluent/root_agent.rb +++ b/lib/fluent/root_agent.rb @@ -86,7 +86,7 @@ def initialize(log:, system_config: SystemConfig.new, start_in_parallel: false) @without_source = system_config.without_source || false @source_only_mode = SourceOnlyMode.new(system_config.with_source_only, start_in_parallel) @source_only_buffer_agent = nil - @enable_input_metrics = system_config.enable_input_metrics || false + @enable_input_metrics = system_config.enable_input_metrics suppress_interval(system_config.emit_error_log_interval) unless system_config.emit_error_log_interval.nil? end diff --git a/lib/fluent/supervisor.rb b/lib/fluent/supervisor.rb index 34d9dadceb..528b984687 100644 --- a/lib/fluent/supervisor.rb +++ b/lib/fluent/supervisor.rb @@ -631,7 +631,7 @@ def self.default_options ignore_repeated_log_interval: nil, without_source: nil, with_source_only: nil, - enable_input_metrics: nil, + enable_input_metrics: true, enable_size_metrics: nil, use_v1_config: true, strict_config_value: nil, diff --git a/lib/fluent/system_config.rb b/lib/fluent/system_config.rb index 630a8ae28f..9a83fd1e3e 100644 --- a/lib/fluent/system_config.rb +++ b/lib/fluent/system_config.rb @@ -51,7 +51,7 @@ class SystemConfig config_param :strict_config_value, :bool, default: nil config_param :enable_msgpack_time_support, :bool, default: nil config_param :disable_shared_socket, :bool, default: nil - config_param :enable_input_metrics, :bool, default: nil + config_param :enable_input_metrics, :bool, default: true config_param :enable_size_metrics, :bool, default: nil config_param :enable_jit, :bool, default: false config_param :file_permission, default: nil do |v| diff --git a/test/config/test_system_config.rb b/test/config/test_system_config.rb index 9a37a3d272..894db236b6 100644 --- a/test/config/test_system_config.rb +++ b/test/config/test_system_config.rb @@ -75,7 +75,7 @@ def parse_text(text) assert_nil(sc.suppress_config_dump) assert_nil(sc.without_source) assert_nil(sc.with_source_only) - assert_nil(sc.enable_input_metrics) + assert_true(sc.enable_input_metrics) assert_nil(sc.enable_size_metrics) assert_nil(sc.enable_msgpack_time_support) assert(!sc.enable_jit) From 0c76db614028b40bb64b087080dba85b36008c48 Mon Sep 17 00:00:00 2001 From: Shizuo Fujita Date: Tue, 20 May 2025 18:23:52 +0900 Subject: [PATCH 2/7] fluentd: add --disable-input-metrics option Signed-off-by: Shizuo Fujita --- lib/fluent/command/fluentd.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/fluent/command/fluentd.rb b/lib/fluent/command/fluentd.rb index c5c4684089..a2039988f0 100644 --- a/lib/fluent/command/fluentd.rb +++ b/lib/fluent/command/fluentd.rb @@ -155,7 +155,11 @@ cmd_opts[:strict_config_value] = b } -op.on('--enable-input-metrics', "Enable input plugin metrics on fluentd", TrueClass) {|b| +op.on('--enable-input-metrics', "[DEPRECATED] Enable input plugin metrics on fluentd", TrueClass) {|b| + cmd_opts[:enable_input_metrics] = b +} + +op.on('--disable-input-metrics', "Disable input plugin metrics on fluentd", FalseClass) {|b| cmd_opts[:enable_input_metrics] = b } From f6ce6035bd565fc4094ff63c50cdef66062de826 Mon Sep 17 00:00:00 2001 From: Shizuo Fujita Date: Wed, 21 May 2025 14:33:58 +0900 Subject: [PATCH 3/7] test_fluentd: add --disable-input-metrics test Signed-off-by: Shizuo Fujita --- test/command/test_fluentd.rb | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/test/command/test_fluentd.rb b/test/command/test_fluentd.rb index ec280e7253..180e2c2fd2 100644 --- a/test/command/test_fluentd.rb +++ b/test/command/test_fluentd.rb @@ -1608,4 +1608,16 @@ def create_config_include_dir_configuration(config_path, config_dir, yaml_format "[info]: loading additional configuration file path=\"#{conf_dir}/child.yml\"") end end + + test "allow --disable-input-metrics option" do + conf = < + +CONF + conf_path = create_conf_file('input-metrics.conf', conf) + assert_log_matches( + create_cmdline(conf_path, '--disable-input-metrics'), + "#0 fluentd worker is now running worker=0" + ) + end end From 54f3162af17af9d856f6ed032b14982d1b8cfb97 Mon Sep 17 00:00:00 2001 From: Shizuo Fujita Date: Wed, 21 May 2025 14:36:09 +0900 Subject: [PATCH 4/7] test_system_config: fix enable_input_metrics value Signed-off-by: Shizuo Fujita --- test/config/test_system_config.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/config/test_system_config.rb b/test/config/test_system_config.rb index 894db236b6..16a93788be 100644 --- a/test/config/test_system_config.rb +++ b/test/config/test_system_config.rb @@ -97,7 +97,7 @@ def parse_text(text) 'with_source_only' => ['with_source_only', true], 'strict_config_value' => ['strict_config_value', true], 'enable_msgpack_time_support' => ['enable_msgpack_time_support', true], - 'enable_input_metrics' => ['enable_input_metrics', true], + 'enable_input_metrics' => ['enable_input_metrics', false], 'enable_size_metrics' => ['enable_size_metrics', true], 'enable_jit' => ['enable_jit', true], ) From c0d476537e3e68e609264f373f61fbb9d8657c1c Mon Sep 17 00:00:00 2001 From: Shizuo Fujita Date: Wed, 21 May 2025 15:03:21 +0900 Subject: [PATCH 5/7] test_root_agent: add test to disable input metrics Signed-off-by: Shizuo Fujita --- test/test_root_agent.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/test/test_root_agent.rb b/test/test_root_agent.rb index 8b44b68699..7e2a07f7cd 100644 --- a/test/test_root_agent.rb +++ b/test/test_root_agent.rb @@ -18,6 +18,7 @@ def test_initialize 'suppress interval' => [{'emit_error_log_interval' => 30}, {:@suppress_emit_error_log_interval => 30}], 'without source' => [{'without_source' => true}, {:@without_source => true}], 'enable input metrics' => [{'enable_input_metrics' => true}, {:@enable_input_metrics => true}], + 'disable input metrics' => [{'enable_input_metrics' => false}, {:@enable_input_metrics => false}], ) def test_initialize_with_opt(data) opt, expected = data From b53d79f0079fd1493e80d1ad0acf886023c52fd6 Mon Sep 17 00:00:00 2001 From: Shizuo Fujita Date: Wed, 21 May 2025 15:23:45 +0900 Subject: [PATCH 6/7] test_supervisor: add enable_input_metrics parameter Signed-off-by: Shizuo Fujita --- test/test_supervisor.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/test_supervisor.rb b/test/test_supervisor.rb index fd89ca8ce4..dea35df33b 100644 --- a/test/test_supervisor.rb +++ b/test/test_supervisor.rb @@ -64,6 +64,7 @@ def test_system_config without_source true with_source_only true enable_get_dump true + enable_input_metrics false process_name "process_name" log_level info root_dir #{@tmp_root_dir} @@ -103,6 +104,7 @@ def test_system_config assert_equal true, sys_conf.without_source assert_equal true, sys_conf.with_source_only assert_equal true, sys_conf.enable_get_dump + assert_equal false, sys_conf.enable_input_metrics assert_equal "process_name", sys_conf.process_name assert_equal 2, sys_conf.log_level assert_equal @tmp_root_dir, sys_conf.root_dir From 9d068786d3ad46be54e8d3c449c2f24dc17cf8c9 Mon Sep 17 00:00:00 2001 From: Shizuo Fujita Date: Wed, 21 May 2025 15:58:21 +0900 Subject: [PATCH 7/7] test_fluentd: fix config Co-authored-by: Daijiro Fukuda Signed-off-by: Shizuo Fujita --- test/command/test_fluentd.rb | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/test/command/test_fluentd.rb b/test/command/test_fluentd.rb index 180e2c2fd2..d02c27ca29 100644 --- a/test/command/test_fluentd.rb +++ b/test/command/test_fluentd.rb @@ -1610,11 +1610,7 @@ def create_config_include_dir_configuration(config_path, config_dir, yaml_format end test "allow --disable-input-metrics option" do - conf = < - -CONF - conf_path = create_conf_file('input-metrics.conf', conf) + conf_path = create_conf_file('empty.conf', '') assert_log_matches( create_cmdline(conf_path, '--disable-input-metrics'), "#0 fluentd worker is now running worker=0"