fluentd 0.12.40 → 1.6.2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of fluentd might be problematic. Click here for more details.
- checksums.yaml +5 -5
- data/.github/ISSUE_TEMPLATE/bug_report.md +39 -0
- data/.github/ISSUE_TEMPLATE/feature_request.md +23 -0
- data/.github/ISSUE_TEMPLATE.md +17 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +13 -0
- data/.gitignore +5 -0
- data/.gitlab/cicd-template.yaml +10 -0
- data/.gitlab-ci.yml +147 -0
- data/.travis.yml +56 -20
- data/ADOPTERS.md +5 -0
- data/CHANGELOG.md +1369 -0
- data/CONTRIBUTING.md +16 -5
- data/GOVERNANCE.md +55 -0
- data/Gemfile +5 -0
- data/GithubWorkflow.md +78 -0
- data/LICENSE +202 -0
- data/MAINTAINERS.md +7 -0
- data/README.md +23 -11
- data/Rakefile +48 -2
- data/Vagrantfile +17 -0
- data/appveyor.yml +37 -0
- data/bin/fluent-binlog-reader +7 -0
- data/bin/fluent-ca-generate +6 -0
- data/bin/fluent-plugin-config-format +5 -0
- data/bin/fluent-plugin-generate +5 -0
- data/bin/fluentd +3 -0
- data/code-of-conduct.md +3 -0
- data/example/copy_roundrobin.conf +39 -0
- data/example/counter.conf +18 -0
- data/example/in_dummy_blocks.conf +17 -0
- data/example/in_dummy_with_compression.conf +23 -0
- data/example/in_forward.conf +7 -0
- data/example/in_forward_client.conf +37 -0
- data/example/in_forward_shared_key.conf +15 -0
- data/example/in_forward_tls.conf +14 -0
- data/example/in_forward_users.conf +24 -0
- data/example/in_forward_workers.conf +21 -0
- data/example/in_http.conf +3 -1
- data/example/in_out_forward.conf +17 -0
- data/example/logevents.conf +25 -0
- data/example/multi_filters.conf +61 -0
- data/example/out_exec_filter.conf +42 -0
- data/example/out_forward.conf +13 -13
- data/example/out_forward_buf_file.conf +23 -0
- data/example/out_forward_client.conf +109 -0
- data/example/out_forward_heartbeat_none.conf +16 -0
- data/example/out_forward_shared_key.conf +36 -0
- data/example/out_forward_tls.conf +18 -0
- data/example/out_forward_users.conf +65 -0
- data/example/out_null.conf +36 -0
- data/example/secondary_file.conf +42 -0
- data/example/suppress_config_dump.conf +7 -0
- data/example/worker_section.conf +36 -0
- data/fluent.conf +29 -0
- data/fluentd.gemspec +21 -11
- data/lib/fluent/agent.rb +67 -90
- data/lib/fluent/clock.rb +62 -0
- data/lib/fluent/command/binlog_reader.rb +244 -0
- data/lib/fluent/command/ca_generate.rb +181 -0
- data/lib/fluent/command/cat.rb +42 -18
- data/lib/fluent/command/debug.rb +12 -10
- data/lib/fluent/command/fluentd.rb +153 -5
- data/lib/fluent/command/plugin_config_formatter.rb +292 -0
- data/lib/fluent/command/plugin_generator.rb +324 -0
- data/lib/fluent/compat/call_super_mixin.rb +67 -0
- data/lib/fluent/compat/detach_process_mixin.rb +33 -0
- data/lib/fluent/compat/exec_util.rb +129 -0
- data/lib/fluent/compat/file_util.rb +54 -0
- data/lib/fluent/compat/filter.rb +68 -0
- data/lib/fluent/compat/formatter.rb +111 -0
- data/lib/fluent/compat/formatter_utils.rb +85 -0
- data/lib/fluent/compat/handle_tag_and_time_mixin.rb +62 -0
- data/lib/fluent/compat/handle_tag_name_mixin.rb +53 -0
- data/lib/fluent/compat/input.rb +49 -0
- data/lib/fluent/compat/output.rb +718 -0
- data/lib/fluent/compat/output_chain.rb +60 -0
- data/lib/fluent/compat/parser.rb +310 -0
- data/lib/fluent/compat/parser_utils.rb +40 -0
- data/lib/fluent/compat/propagate_default.rb +62 -0
- data/lib/fluent/compat/record_filter_mixin.rb +34 -0
- data/lib/fluent/compat/set_tag_key_mixin.rb +50 -0
- data/lib/fluent/compat/set_time_key_mixin.rb +69 -0
- data/lib/fluent/compat/socket_util.rb +165 -0
- data/lib/fluent/compat/string_util.rb +34 -0
- data/lib/fluent/compat/structured_format_mixin.rb +26 -0
- data/lib/fluent/compat/type_converter.rb +90 -0
- data/lib/fluent/config/configure_proxy.rb +210 -62
- data/lib/fluent/config/dsl.rb +12 -5
- data/lib/fluent/config/element.rb +107 -9
- data/lib/fluent/config/literal_parser.rb +9 -3
- data/lib/fluent/config/parser.rb +4 -4
- data/lib/fluent/config/section.rb +51 -14
- data/lib/fluent/config/types.rb +28 -13
- data/lib/fluent/config/v1_parser.rb +3 -5
- data/lib/fluent/config.rb +23 -20
- data/lib/fluent/configurable.rb +79 -21
- data/lib/fluent/counter/base_socket.rb +46 -0
- data/lib/fluent/counter/client.rb +297 -0
- data/lib/fluent/counter/error.rb +86 -0
- data/lib/fluent/counter/mutex_hash.rb +163 -0
- data/lib/fluent/counter/server.rb +273 -0
- data/lib/fluent/counter/store.rb +205 -0
- data/lib/fluent/counter/validator.rb +145 -0
- data/lib/fluent/counter.rb +23 -0
- data/lib/fluent/daemon.rb +15 -0
- data/lib/fluent/engine.rb +102 -65
- data/lib/fluent/env.rb +7 -3
- data/lib/fluent/error.rb +30 -0
- data/lib/fluent/event.rb +197 -21
- data/lib/fluent/event_router.rb +93 -10
- data/lib/fluent/filter.rb +2 -50
- data/lib/fluent/formatter.rb +4 -293
- data/lib/fluent/input.rb +2 -32
- data/lib/fluent/label.rb +10 -2
- data/lib/fluent/load.rb +3 -3
- data/lib/fluent/log.rb +348 -81
- data/lib/fluent/match.rb +37 -36
- data/lib/fluent/mixin.rb +12 -176
- data/lib/fluent/msgpack_factory.rb +62 -0
- data/lib/fluent/output.rb +10 -612
- data/lib/fluent/output_chain.rb +23 -0
- data/lib/fluent/parser.rb +4 -800
- data/lib/fluent/plugin/bare_output.rb +63 -0
- data/lib/fluent/plugin/base.rb +192 -0
- data/lib/fluent/plugin/buf_file.rb +128 -174
- data/lib/fluent/plugin/buf_memory.rb +9 -92
- data/lib/fluent/plugin/buffer/chunk.rb +221 -0
- data/lib/fluent/plugin/buffer/file_chunk.rb +383 -0
- data/lib/fluent/plugin/buffer/memory_chunk.rb +90 -0
- data/lib/fluent/plugin/buffer.rb +779 -0
- data/lib/fluent/plugin/compressable.rb +92 -0
- data/lib/fluent/plugin/exec_util.rb +3 -108
- data/lib/fluent/plugin/file_util.rb +4 -34
- data/lib/fluent/plugin/file_wrapper.rb +120 -0
- data/lib/fluent/plugin/filter.rb +93 -0
- data/lib/fluent/plugin/filter_grep.rb +117 -34
- data/lib/fluent/plugin/filter_parser.rb +85 -62
- data/lib/fluent/plugin/filter_record_transformer.rb +27 -39
- data/lib/fluent/plugin/filter_stdout.rb +15 -12
- data/lib/fluent/plugin/formatter.rb +50 -0
- data/lib/fluent/plugin/formatter_csv.rb +52 -0
- data/lib/fluent/plugin/formatter_hash.rb +33 -0
- data/lib/fluent/plugin/formatter_json.rb +55 -0
- data/lib/fluent/plugin/formatter_ltsv.rb +42 -0
- data/lib/fluent/plugin/formatter_msgpack.rb +33 -0
- data/lib/fluent/plugin/formatter_out_file.rb +51 -0
- data/lib/fluent/plugin/formatter_single_value.rb +34 -0
- data/lib/fluent/plugin/formatter_stdout.rb +76 -0
- data/lib/fluent/plugin/formatter_tsv.rb +38 -0
- data/lib/fluent/plugin/in_debug_agent.rb +17 -6
- data/lib/fluent/plugin/in_dummy.rb +47 -20
- data/lib/fluent/plugin/in_exec.rb +55 -123
- data/lib/fluent/plugin/in_forward.rb +299 -216
- data/lib/fluent/plugin/in_gc_stat.rb +14 -36
- data/lib/fluent/plugin/in_http.rb +204 -91
- data/lib/fluent/plugin/in_monitor_agent.rb +186 -258
- data/lib/fluent/plugin/in_object_space.rb +13 -41
- data/lib/fluent/plugin/in_syslog.rb +112 -134
- data/lib/fluent/plugin/in_tail.rb +408 -745
- data/lib/fluent/plugin/in_tcp.rb +66 -9
- data/lib/fluent/plugin/in_udp.rb +60 -11
- data/lib/fluent/plugin/{in_stream.rb → in_unix.rb} +8 -4
- data/lib/fluent/plugin/input.rb +37 -0
- data/lib/fluent/plugin/multi_output.rb +158 -0
- data/lib/fluent/plugin/out_copy.rb +23 -35
- data/lib/fluent/plugin/out_exec.rb +67 -70
- data/lib/fluent/plugin/out_exec_filter.rb +204 -271
- data/lib/fluent/plugin/out_file.rb +267 -73
- data/lib/fluent/plugin/out_forward.rb +854 -325
- data/lib/fluent/plugin/out_null.rb +42 -9
- data/lib/fluent/plugin/out_relabel.rb +9 -5
- data/lib/fluent/plugin/out_roundrobin.rb +18 -37
- data/lib/fluent/plugin/out_secondary_file.rb +133 -0
- data/lib/fluent/plugin/out_stdout.rb +43 -10
- data/lib/fluent/plugin/out_stream.rb +7 -2
- data/lib/fluent/plugin/output.rb +1498 -0
- data/lib/fluent/plugin/owned_by_mixin.rb +42 -0
- data/lib/fluent/plugin/parser.rb +191 -0
- data/lib/fluent/plugin/parser_apache.rb +28 -0
- data/lib/fluent/plugin/parser_apache2.rb +88 -0
- data/lib/fluent/plugin/parser_apache_error.rb +26 -0
- data/lib/fluent/plugin/parser_csv.rb +39 -0
- data/lib/fluent/plugin/parser_json.rb +94 -0
- data/lib/fluent/plugin/parser_ltsv.rb +49 -0
- data/lib/fluent/plugin/parser_msgpack.rb +50 -0
- data/lib/fluent/plugin/parser_multiline.rb +106 -0
- data/lib/fluent/plugin/parser_nginx.rb +28 -0
- data/lib/fluent/plugin/parser_none.rb +36 -0
- data/lib/fluent/plugin/parser_regexp.rb +68 -0
- data/lib/fluent/plugin/parser_syslog.rb +142 -0
- data/lib/fluent/plugin/parser_tsv.rb +42 -0
- data/lib/fluent/plugin/socket_util.rb +3 -143
- data/lib/fluent/plugin/storage.rb +84 -0
- data/lib/fluent/plugin/storage_local.rb +164 -0
- data/lib/fluent/plugin/string_util.rb +3 -15
- data/lib/fluent/plugin.rb +122 -121
- data/lib/fluent/plugin_helper/cert_option.rb +178 -0
- data/lib/fluent/plugin_helper/child_process.rb +364 -0
- data/lib/fluent/plugin_helper/compat_parameters.rb +333 -0
- data/lib/fluent/plugin_helper/counter.rb +51 -0
- data/lib/fluent/plugin_helper/event_emitter.rb +93 -0
- data/lib/fluent/plugin_helper/event_loop.rb +170 -0
- data/lib/fluent/plugin_helper/extract.rb +104 -0
- data/lib/fluent/plugin_helper/formatter.rb +147 -0
- data/lib/fluent/plugin_helper/http_server/app.rb +79 -0
- data/lib/fluent/plugin_helper/http_server/compat/server.rb +81 -0
- data/lib/fluent/plugin_helper/http_server/compat/webrick_handler.rb +58 -0
- data/lib/fluent/plugin_helper/http_server/methods.rb +35 -0
- data/lib/fluent/plugin_helper/http_server/request.rb +42 -0
- data/lib/fluent/plugin_helper/http_server/router.rb +54 -0
- data/lib/fluent/plugin_helper/http_server/server.rb +87 -0
- data/lib/fluent/plugin_helper/http_server.rb +76 -0
- data/lib/fluent/plugin_helper/inject.rb +151 -0
- data/lib/fluent/plugin_helper/parser.rb +147 -0
- data/lib/fluent/plugin_helper/record_accessor.rb +210 -0
- data/lib/fluent/plugin_helper/retry_state.rb +205 -0
- data/lib/fluent/plugin_helper/server.rb +807 -0
- data/lib/fluent/plugin_helper/socket.rb +250 -0
- data/lib/fluent/plugin_helper/socket_option.rb +80 -0
- data/lib/fluent/plugin_helper/storage.rb +349 -0
- data/lib/fluent/plugin_helper/thread.rb +179 -0
- data/lib/fluent/plugin_helper/timer.rb +92 -0
- data/lib/fluent/plugin_helper.rb +73 -0
- data/lib/fluent/plugin_id.rb +80 -0
- data/lib/fluent/process.rb +3 -489
- data/lib/fluent/registry.rb +52 -10
- data/lib/fluent/root_agent.rb +204 -42
- data/lib/fluent/supervisor.rb +597 -359
- data/lib/fluent/system_config.rb +131 -42
- data/lib/fluent/test/base.rb +6 -54
- data/lib/fluent/test/driver/base.rb +224 -0
- data/lib/fluent/test/driver/base_owned.rb +70 -0
- data/lib/fluent/test/driver/base_owner.rb +135 -0
- data/lib/fluent/test/driver/event_feeder.rb +98 -0
- data/lib/fluent/test/driver/filter.rb +57 -0
- data/lib/fluent/test/driver/formatter.rb +30 -0
- data/lib/fluent/test/driver/input.rb +31 -0
- data/lib/fluent/test/driver/multi_output.rb +53 -0
- data/lib/fluent/test/driver/output.rb +102 -0
- data/lib/fluent/test/driver/parser.rb +30 -0
- data/lib/fluent/test/driver/test_event_router.rb +45 -0
- data/lib/fluent/test/filter_test.rb +0 -1
- data/lib/fluent/test/formatter_test.rb +4 -1
- data/lib/fluent/test/helpers.rb +58 -10
- data/lib/fluent/test/input_test.rb +27 -19
- data/lib/fluent/test/log.rb +79 -0
- data/lib/fluent/test/output_test.rb +28 -39
- data/lib/fluent/test/parser_test.rb +3 -1
- data/lib/fluent/test/startup_shutdown.rb +46 -0
- data/lib/fluent/test.rb +33 -1
- data/lib/fluent/time.rb +450 -1
- data/lib/fluent/timezone.rb +27 -3
- data/lib/fluent/{status.rb → unique_id.rb} +15 -24
- data/lib/fluent/version.rb +1 -1
- data/lib/fluent/winsvc.rb +85 -0
- data/templates/new_gem/Gemfile +3 -0
- data/templates/new_gem/README.md.erb +43 -0
- data/templates/new_gem/Rakefile +13 -0
- data/templates/new_gem/fluent-plugin.gemspec.erb +27 -0
- data/templates/new_gem/lib/fluent/plugin/filter.rb.erb +14 -0
- data/templates/new_gem/lib/fluent/plugin/formatter.rb.erb +14 -0
- data/templates/new_gem/lib/fluent/plugin/input.rb.erb +11 -0
- data/templates/new_gem/lib/fluent/plugin/output.rb.erb +11 -0
- data/templates/new_gem/lib/fluent/plugin/parser.rb.erb +15 -0
- data/templates/new_gem/test/helper.rb.erb +8 -0
- data/templates/new_gem/test/plugin/test_filter.rb.erb +18 -0
- data/templates/new_gem/test/plugin/test_formatter.rb.erb +18 -0
- data/templates/new_gem/test/plugin/test_input.rb.erb +18 -0
- data/templates/new_gem/test/plugin/test_output.rb.erb +18 -0
- data/templates/new_gem/test/plugin/test_parser.rb.erb +18 -0
- data/templates/plugin_config_formatter/param.md-compact.erb +25 -0
- data/templates/plugin_config_formatter/param.md.erb +34 -0
- data/templates/plugin_config_formatter/section.md.erb +12 -0
- data/test/command/test_binlog_reader.rb +346 -0
- data/test/command/test_ca_generate.rb +70 -0
- data/test/command/test_fluentd.rb +901 -0
- data/test/command/test_plugin_config_formatter.rb +276 -0
- data/test/command/test_plugin_generator.rb +92 -0
- data/test/compat/test_calls_super.rb +166 -0
- data/test/compat/test_parser.rb +92 -0
- data/test/config/test_config_parser.rb +126 -2
- data/test/config/test_configurable.rb +946 -187
- data/test/config/test_configure_proxy.rb +424 -74
- data/test/config/test_dsl.rb +11 -11
- data/test/config/test_element.rb +500 -0
- data/test/config/test_literal_parser.rb +8 -0
- data/test/config/test_plugin_configuration.rb +56 -0
- data/test/config/test_section.rb +79 -7
- data/test/config/test_system_config.rb +122 -35
- data/test/config/test_types.rb +38 -0
- data/test/counter/test_client.rb +559 -0
- data/test/counter/test_error.rb +44 -0
- data/test/counter/test_mutex_hash.rb +179 -0
- data/test/counter/test_server.rb +589 -0
- data/test/counter/test_store.rb +258 -0
- data/test/counter/test_validator.rb +137 -0
- data/test/helper.rb +89 -6
- data/test/helpers/fuzzy_assert.rb +89 -0
- data/test/plugin/test_bare_output.rb +118 -0
- data/test/plugin/test_base.rb +115 -0
- data/test/plugin/test_buf_file.rb +823 -460
- data/test/plugin/test_buf_memory.rb +32 -194
- data/test/plugin/test_buffer.rb +1233 -0
- data/test/plugin/test_buffer_chunk.rb +198 -0
- data/test/plugin/test_buffer_file_chunk.rb +844 -0
- data/test/plugin/test_buffer_memory_chunk.rb +338 -0
- data/test/plugin/test_compressable.rb +84 -0
- data/test/plugin/test_filter.rb +357 -0
- data/test/plugin/test_filter_grep.rb +540 -29
- data/test/plugin/test_filter_parser.rb +439 -452
- data/test/plugin/test_filter_record_transformer.rb +123 -166
- data/test/plugin/test_filter_stdout.rb +160 -72
- data/test/plugin/test_formatter_csv.rb +111 -0
- data/test/plugin/test_formatter_hash.rb +35 -0
- data/test/plugin/test_formatter_json.rb +51 -0
- data/test/plugin/test_formatter_ltsv.rb +62 -0
- data/test/plugin/test_formatter_msgpack.rb +28 -0
- data/test/plugin/test_formatter_out_file.rb +95 -0
- data/test/plugin/test_formatter_single_value.rb +38 -0
- data/test/plugin/test_formatter_tsv.rb +68 -0
- data/test/plugin/test_in_debug_agent.rb +24 -1
- data/test/plugin/test_in_dummy.rb +111 -18
- data/test/plugin/test_in_exec.rb +200 -113
- data/test/plugin/test_in_forward.rb +990 -387
- data/test/plugin/test_in_gc_stat.rb +10 -8
- data/test/plugin/test_in_http.rb +600 -224
- data/test/plugin/test_in_monitor_agent.rb +690 -0
- data/test/plugin/test_in_object_space.rb +24 -8
- data/test/plugin/test_in_syslog.rb +154 -215
- data/test/plugin/test_in_tail.rb +1006 -707
- data/test/plugin/test_in_tcp.rb +125 -48
- data/test/plugin/test_in_udp.rb +204 -63
- data/test/plugin/{test_in_stream.rb → test_in_unix.rb} +14 -13
- data/test/plugin/test_input.rb +126 -0
- data/test/plugin/test_metadata.rb +89 -0
- data/test/plugin/test_multi_output.rb +180 -0
- data/test/plugin/test_out_copy.rb +117 -112
- data/test/plugin/test_out_exec.rb +258 -53
- data/test/plugin/test_out_exec_filter.rb +538 -115
- data/test/plugin/test_out_file.rb +865 -178
- data/test/plugin/test_out_forward.rb +998 -210
- data/test/plugin/test_out_null.rb +105 -0
- data/test/plugin/test_out_relabel.rb +28 -0
- data/test/plugin/test_out_roundrobin.rb +36 -29
- data/test/plugin/test_out_secondary_file.rb +458 -0
- data/test/plugin/test_out_stdout.rb +135 -37
- data/test/plugin/test_out_stream.rb +18 -0
- data/test/plugin/test_output.rb +984 -0
- data/test/plugin/test_output_as_buffered.rb +2021 -0
- data/test/plugin/test_output_as_buffered_backup.rb +312 -0
- data/test/plugin/test_output_as_buffered_compress.rb +165 -0
- data/test/plugin/test_output_as_buffered_overflow.rb +250 -0
- data/test/plugin/test_output_as_buffered_retries.rb +911 -0
- data/test/plugin/test_output_as_buffered_secondary.rb +874 -0
- data/test/plugin/test_output_as_standard.rb +374 -0
- data/test/plugin/test_owned_by.rb +35 -0
- data/test/plugin/test_parser.rb +359 -0
- data/test/plugin/test_parser_apache.rb +42 -0
- data/test/plugin/test_parser_apache2.rb +47 -0
- data/test/plugin/test_parser_apache_error.rb +45 -0
- data/test/plugin/test_parser_csv.rb +103 -0
- data/test/plugin/test_parser_json.rb +138 -0
- data/test/plugin/test_parser_labeled_tsv.rb +145 -0
- data/test/plugin/test_parser_multiline.rb +100 -0
- data/test/plugin/test_parser_nginx.rb +88 -0
- data/test/plugin/test_parser_none.rb +52 -0
- data/test/plugin/test_parser_regexp.rb +289 -0
- data/test/plugin/test_parser_syslog.rb +441 -0
- data/test/plugin/test_parser_tsv.rb +122 -0
- data/test/plugin/test_storage.rb +167 -0
- data/test/plugin/test_storage_local.rb +335 -0
- data/test/plugin_helper/data/cert/cert-key.pem +27 -0
- data/test/plugin_helper/data/cert/cert-with-no-newline.pem +19 -0
- data/test/plugin_helper/data/cert/cert.pem +19 -0
- data/test/plugin_helper/http_server/test_app.rb +65 -0
- data/test/plugin_helper/http_server/test_route.rb +32 -0
- data/test/plugin_helper/test_cert_option.rb +16 -0
- data/test/plugin_helper/test_child_process.rb +794 -0
- data/test/plugin_helper/test_compat_parameters.rb +353 -0
- data/test/plugin_helper/test_event_emitter.rb +51 -0
- data/test/plugin_helper/test_event_loop.rb +52 -0
- data/test/plugin_helper/test_extract.rb +194 -0
- data/test/plugin_helper/test_formatter.rb +255 -0
- data/test/plugin_helper/test_http_server_helper.rb +205 -0
- data/test/plugin_helper/test_inject.rb +519 -0
- data/test/plugin_helper/test_parser.rb +264 -0
- data/test/plugin_helper/test_record_accessor.rb +197 -0
- data/test/plugin_helper/test_retry_state.rb +442 -0
- data/test/plugin_helper/test_server.rb +1714 -0
- data/test/plugin_helper/test_storage.rb +542 -0
- data/test/plugin_helper/test_thread.rb +164 -0
- data/test/plugin_helper/test_timer.rb +132 -0
- data/test/scripts/exec_script.rb +0 -6
- data/test/scripts/fluent/plugin/formatter1/formatter_test1.rb +7 -0
- data/test/scripts/fluent/plugin/formatter2/formatter_test2.rb +7 -0
- data/test/scripts/fluent/plugin/out_test.rb +23 -15
- data/test/scripts/fluent/plugin/out_test2.rb +80 -0
- data/test/test_clock.rb +164 -0
- data/test/test_config.rb +16 -7
- data/test/test_configdsl.rb +2 -2
- data/test/test_event.rb +360 -13
- data/test/test_event_router.rb +108 -11
- data/test/test_event_time.rb +199 -0
- data/test/test_filter.rb +48 -6
- data/test/test_formatter.rb +11 -391
- data/test/test_input.rb +1 -1
- data/test/test_log.rb +591 -31
- data/test/test_mixin.rb +1 -1
- data/test/test_output.rb +121 -185
- data/test/test_plugin.rb +251 -0
- data/test/test_plugin_classes.rb +177 -10
- data/test/test_plugin_helper.rb +81 -0
- data/test/test_plugin_id.rb +101 -0
- data/test/test_process.rb +8 -42
- data/test/test_root_agent.rb +766 -21
- data/test/test_supervisor.rb +481 -0
- data/test/test_test_drivers.rb +135 -0
- data/test/test_time_formatter.rb +282 -0
- data/test/test_time_parser.rb +231 -0
- data/test/test_unique_id.rb +47 -0
- metadata +454 -60
- data/COPYING +0 -14
- data/ChangeLog +0 -666
- data/lib/fluent/buffer.rb +0 -365
- data/lib/fluent/plugin/in_status.rb +0 -76
- data/test/plugin/test_in_status.rb +0 -38
- data/test/test_buffer.rb +0 -624
- data/test/test_parser.rb +0 -1305
@@ -0,0 +1,39 @@
|
|
1
|
+
<source>
|
2
|
+
@type dummy
|
3
|
+
@label @test
|
4
|
+
tag test.copy
|
5
|
+
auto_increment_key id
|
6
|
+
</source>
|
7
|
+
|
8
|
+
<source>
|
9
|
+
@type dummy
|
10
|
+
@label @test
|
11
|
+
tag test.rr
|
12
|
+
auto_increment_key id
|
13
|
+
</source>
|
14
|
+
|
15
|
+
<label @test>
|
16
|
+
<match test.copy>
|
17
|
+
@type copy
|
18
|
+
<store>
|
19
|
+
@type stdout
|
20
|
+
output_type json
|
21
|
+
</store>
|
22
|
+
<store>
|
23
|
+
@type stdout
|
24
|
+
output_type ltsv
|
25
|
+
</store>
|
26
|
+
</match>
|
27
|
+
|
28
|
+
<match test.rr>
|
29
|
+
@type roundrobin
|
30
|
+
<store>
|
31
|
+
@type stdout
|
32
|
+
output_type json
|
33
|
+
</store>
|
34
|
+
<store>
|
35
|
+
@type stdout
|
36
|
+
output_type ltsv
|
37
|
+
</store>
|
38
|
+
</match>
|
39
|
+
</label>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<system>
|
2
|
+
<counter_server>
|
3
|
+
scope server1
|
4
|
+
bind 127.0.0.1
|
5
|
+
port 24321
|
6
|
+
path tmp/back
|
7
|
+
</counter_server>
|
8
|
+
</system>
|
9
|
+
|
10
|
+
<source>
|
11
|
+
@type dummy
|
12
|
+
tag "test.data"
|
13
|
+
auto_increment_key number
|
14
|
+
</source>
|
15
|
+
|
16
|
+
<match>
|
17
|
+
@type stdout
|
18
|
+
</match>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
<source>
|
2
|
+
@type dummy
|
3
|
+
tag dummy
|
4
|
+
rate 100
|
5
|
+
dummy {"message":"yaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaay"}
|
6
|
+
</source>
|
7
|
+
|
8
|
+
<match dummy>
|
9
|
+
@type null
|
10
|
+
never_flush true
|
11
|
+
<buffer>
|
12
|
+
@type memory
|
13
|
+
overflow_action block
|
14
|
+
chunk_limit_size 1k
|
15
|
+
total_limit_size 2k
|
16
|
+
</buffer>
|
17
|
+
</match>
|
@@ -0,0 +1,23 @@
|
|
1
|
+
<source>
|
2
|
+
@type dummy
|
3
|
+
@label @main
|
4
|
+
tag "test.data"
|
5
|
+
size 2
|
6
|
+
rate 10
|
7
|
+
dummy {"message":"yaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaay"}
|
8
|
+
auto_increment_key number
|
9
|
+
</source>
|
10
|
+
|
11
|
+
<label @main>
|
12
|
+
<match test.data>
|
13
|
+
@type buffered_stdout
|
14
|
+
<buffer>
|
15
|
+
@type file
|
16
|
+
path "#{Dir.pwd}/compressed_buffers"
|
17
|
+
flush_at_shutdown false
|
18
|
+
chunk_limit_size 1m
|
19
|
+
flush_interval 10s
|
20
|
+
compress gzip
|
21
|
+
</buffer>
|
22
|
+
</match>
|
23
|
+
</label>
|
data/example/in_forward.conf
CHANGED
@@ -0,0 +1,37 @@
|
|
1
|
+
<system>
|
2
|
+
rpc_endpoint 0.0.0.0:24444
|
3
|
+
</system>
|
4
|
+
|
5
|
+
<source>
|
6
|
+
@type forward
|
7
|
+
port 24224
|
8
|
+
bind 0.0.0.0
|
9
|
+
<security>
|
10
|
+
self_hostname input.testing.local
|
11
|
+
shared_key secure_communication_is_awesome
|
12
|
+
user_auth yes
|
13
|
+
allow_anonymous_source no
|
14
|
+
<user>
|
15
|
+
username user1
|
16
|
+
password yes_this_is_user1
|
17
|
+
</user>
|
18
|
+
<user>
|
19
|
+
username user2
|
20
|
+
password yes_this_is_really_user2
|
21
|
+
</user>
|
22
|
+
<user>
|
23
|
+
username user3
|
24
|
+
password noooooo_this_may_not_be_user3
|
25
|
+
</user>
|
26
|
+
<client>
|
27
|
+
# host 127.0.0.1
|
28
|
+
network 127.0.0.0/24
|
29
|
+
shared_key using_different_key_makes_us_secure
|
30
|
+
users user1,user2
|
31
|
+
</client>
|
32
|
+
</security>
|
33
|
+
</source>
|
34
|
+
|
35
|
+
<match {test,test2,test3,test4}>
|
36
|
+
@type stdout
|
37
|
+
</match>
|
@@ -0,0 +1,24 @@
|
|
1
|
+
<system>
|
2
|
+
rpc_endpoint 0.0.0.0:24444
|
3
|
+
</system>
|
4
|
+
|
5
|
+
<source>
|
6
|
+
@type forward
|
7
|
+
<security>
|
8
|
+
self_hostname input.testing.local
|
9
|
+
shared_key secure_communication_is_awesome
|
10
|
+
user_auth yes
|
11
|
+
<user>
|
12
|
+
username user1
|
13
|
+
password yes_this_is_user1
|
14
|
+
</user>
|
15
|
+
<user>
|
16
|
+
username user2
|
17
|
+
password yes_this_is_really_user2
|
18
|
+
</user>
|
19
|
+
</security>
|
20
|
+
</source>
|
21
|
+
|
22
|
+
<match {test,test2,test3}>
|
23
|
+
@type stdout
|
24
|
+
</match>
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<system>
|
2
|
+
workers 3
|
3
|
+
root_dir "#{File.join(Dir.pwd, 'test', 'tmp', 'root')}"
|
4
|
+
</system>
|
5
|
+
|
6
|
+
<source>
|
7
|
+
@type forward
|
8
|
+
@id forward_in_1
|
9
|
+
</source>
|
10
|
+
|
11
|
+
<match test>
|
12
|
+
@type stdout
|
13
|
+
@id stdout_out_1
|
14
|
+
<inject>
|
15
|
+
worker_id_key worker_id
|
16
|
+
</inject>
|
17
|
+
<buffer>
|
18
|
+
@type file
|
19
|
+
flush_interval 1s
|
20
|
+
</buffer>
|
21
|
+
</match>
|
data/example/in_http.conf
CHANGED
@@ -0,0 +1,17 @@
|
|
1
|
+
<source>
|
2
|
+
@type forward
|
3
|
+
port 24224
|
4
|
+
</source>
|
5
|
+
|
6
|
+
<match test.**>
|
7
|
+
@type forward
|
8
|
+
buffer_type file
|
9
|
+
buffer_path /tmp/fluentd.forward.buffer
|
10
|
+
num_threads 10
|
11
|
+
flush_interval 1s
|
12
|
+
<server>
|
13
|
+
host 127.0.0.1
|
14
|
+
port 24225
|
15
|
+
</server>
|
16
|
+
</match>
|
17
|
+
|
@@ -0,0 +1,25 @@
|
|
1
|
+
<source>
|
2
|
+
@type dummy
|
3
|
+
@label @dummylog
|
4
|
+
tag "data"
|
5
|
+
dummy {"message":"yay"}
|
6
|
+
</source>
|
7
|
+
<label @dummylog>
|
8
|
+
<match **>
|
9
|
+
@type stdout
|
10
|
+
</match>
|
11
|
+
</label>
|
12
|
+
<label @FLUENT_LOG>
|
13
|
+
<match fluent.debug fluent.info fluent.warn fluent.error fluent.fatal>
|
14
|
+
@type stdout
|
15
|
+
<inject>
|
16
|
+
hostname_key "host"
|
17
|
+
</inject>
|
18
|
+
</match>
|
19
|
+
# <match fluent.{info,warn,error,fatal}>
|
20
|
+
# @type stdout
|
21
|
+
# <inject>
|
22
|
+
# hostname_key "host"
|
23
|
+
# </inject>
|
24
|
+
# </match>
|
25
|
+
</label>
|
@@ -0,0 +1,61 @@
|
|
1
|
+
# This example is to measure optimized filter pipeline performance.
|
2
|
+
|
3
|
+
<source>
|
4
|
+
@type dummy
|
5
|
+
tag test
|
6
|
+
size 1000
|
7
|
+
</source>
|
8
|
+
|
9
|
+
<filter test>
|
10
|
+
@type grep
|
11
|
+
exclude1 hello .
|
12
|
+
</filter>
|
13
|
+
|
14
|
+
<filter test>
|
15
|
+
@type grep
|
16
|
+
exclude1 hello .
|
17
|
+
</filter>
|
18
|
+
|
19
|
+
<filter test>
|
20
|
+
@type grep
|
21
|
+
exclude1 hello .
|
22
|
+
</filter>
|
23
|
+
|
24
|
+
<filter test>
|
25
|
+
@type grep
|
26
|
+
exclude1 hello .
|
27
|
+
</filter>
|
28
|
+
|
29
|
+
<filter test>
|
30
|
+
@type grep
|
31
|
+
exclude1 hello .
|
32
|
+
</filter>
|
33
|
+
|
34
|
+
<filter test>
|
35
|
+
@type grep
|
36
|
+
exclude1 hello .
|
37
|
+
</filter>
|
38
|
+
|
39
|
+
<filter test>
|
40
|
+
@type grep
|
41
|
+
exclude1 hello .
|
42
|
+
</filter>
|
43
|
+
|
44
|
+
<filter test>
|
45
|
+
@type grep
|
46
|
+
exclude1 hello .
|
47
|
+
</filter>
|
48
|
+
|
49
|
+
<filter test>
|
50
|
+
@type grep
|
51
|
+
exclude1 hello .
|
52
|
+
</filter>
|
53
|
+
|
54
|
+
<filter test>
|
55
|
+
@type grep
|
56
|
+
exclude1 hello .
|
57
|
+
</filter>
|
58
|
+
|
59
|
+
<match test>
|
60
|
+
@type buffered_null
|
61
|
+
</match>
|
@@ -0,0 +1,42 @@
|
|
1
|
+
<source>
|
2
|
+
@type dummy
|
3
|
+
@label @exec
|
4
|
+
tag exec_input
|
5
|
+
rate 10
|
6
|
+
auto_increment_key num
|
7
|
+
dummy {"data":"mydata"}
|
8
|
+
</source>
|
9
|
+
|
10
|
+
<label @exec>
|
11
|
+
<match exec_input>
|
12
|
+
@type exec_filter
|
13
|
+
@label @stdout
|
14
|
+
tag result
|
15
|
+
command ruby -e 'STDOUT.sync = true; proc = ->(){line = STDIN.readline.chomp; puts line + "\t" + Process.pid.to_s}; 1000.times{ proc.call }'
|
16
|
+
num_children 3
|
17
|
+
child_respawn -1
|
18
|
+
<inject>
|
19
|
+
time_key time
|
20
|
+
time_type float
|
21
|
+
</inject>
|
22
|
+
<format>
|
23
|
+
@type tsv
|
24
|
+
keys data, num, time
|
25
|
+
</format>
|
26
|
+
<parse>
|
27
|
+
@type tsv
|
28
|
+
keys data, num, time, pid
|
29
|
+
</parse>
|
30
|
+
<extract>
|
31
|
+
time_key time
|
32
|
+
time_type float
|
33
|
+
</extract>
|
34
|
+
</match>
|
35
|
+
</label>
|
36
|
+
|
37
|
+
<label @stdout>
|
38
|
+
<match result>
|
39
|
+
@type stdout
|
40
|
+
</match>
|
41
|
+
</label>
|
42
|
+
|
data/example/out_forward.conf
CHANGED
@@ -8,22 +8,22 @@
|
|
8
8
|
|
9
9
|
<server>
|
10
10
|
# first server
|
11
|
-
host
|
11
|
+
host 127.0.0.1
|
12
12
|
port 24224
|
13
13
|
</server>
|
14
|
-
<server>
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
</server>
|
19
|
-
<server>
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
</server>
|
14
|
+
# <server>
|
15
|
+
# # second server
|
16
|
+
# host localhost
|
17
|
+
# port 24225
|
18
|
+
# </server>
|
19
|
+
# <server>
|
20
|
+
# # second server
|
21
|
+
# host localhost
|
22
|
+
# port 24226
|
23
|
+
# standby
|
24
|
+
# </server>
|
25
25
|
|
26
|
-
flush_interval
|
26
|
+
flush_interval 0
|
27
27
|
send_timeout 60
|
28
28
|
heartbeat_type udp
|
29
29
|
heartbeat_interval 1
|
@@ -0,0 +1,23 @@
|
|
1
|
+
<source>
|
2
|
+
@type dummy
|
3
|
+
tag test
|
4
|
+
</source>
|
5
|
+
|
6
|
+
<source>
|
7
|
+
@type monitor_agent
|
8
|
+
emit_interval 5
|
9
|
+
</source>
|
10
|
+
|
11
|
+
<match test>
|
12
|
+
@type forward
|
13
|
+
buffer_path /tmp/fluentd.forward
|
14
|
+
buffer_type file
|
15
|
+
flush_interval 5
|
16
|
+
send_timeout 60
|
17
|
+
heartbeat_type tcp
|
18
|
+
heartbeat_interval 1
|
19
|
+
<server>
|
20
|
+
host 127.0.0.1
|
21
|
+
port 24224
|
22
|
+
</server>
|
23
|
+
</match>
|
@@ -0,0 +1,109 @@
|
|
1
|
+
<source>
|
2
|
+
@type dummy
|
3
|
+
tag test
|
4
|
+
</source>
|
5
|
+
<source>
|
6
|
+
@type dummy
|
7
|
+
tag test2
|
8
|
+
</source>
|
9
|
+
<source>
|
10
|
+
@type dummy
|
11
|
+
tag test3
|
12
|
+
</source>
|
13
|
+
<source>
|
14
|
+
@type dummy
|
15
|
+
tag test4
|
16
|
+
</source>
|
17
|
+
<source>
|
18
|
+
@type dummy
|
19
|
+
tag test5
|
20
|
+
</source>
|
21
|
+
|
22
|
+
<match test>
|
23
|
+
@type forward
|
24
|
+
flush_interval 0
|
25
|
+
<security>
|
26
|
+
self_hostname output.testing.local
|
27
|
+
shared_key secure_communication_is_awesome
|
28
|
+
</security>
|
29
|
+
<server>
|
30
|
+
host 127.0.0.1
|
31
|
+
port 24224
|
32
|
+
username user1
|
33
|
+
password yes_this_is_user1
|
34
|
+
shared_key using_different_key_makes_us_secure
|
35
|
+
</server>
|
36
|
+
</match>
|
37
|
+
|
38
|
+
<match test2>
|
39
|
+
@type forward
|
40
|
+
flush_interval 0
|
41
|
+
<security>
|
42
|
+
self_hostname output-alt1.testing.local
|
43
|
+
shared_key using_different_key_makes_us_secure
|
44
|
+
</security>
|
45
|
+
<server>
|
46
|
+
host 127.0.0.1
|
47
|
+
port 24224
|
48
|
+
username user1
|
49
|
+
password yes_this_is_user1
|
50
|
+
</server>
|
51
|
+
<server>
|
52
|
+
host 127.0.0.1
|
53
|
+
port 24224
|
54
|
+
username user2
|
55
|
+
password yes_this_is_really_user2
|
56
|
+
</server>
|
57
|
+
</match>
|
58
|
+
|
59
|
+
<match test3>
|
60
|
+
@type forward
|
61
|
+
flush_interval 0
|
62
|
+
<security>
|
63
|
+
self_hostname output-fail1.testing.local
|
64
|
+
# default key: fail
|
65
|
+
shared_key secure_communication_is_awesome
|
66
|
+
</security>
|
67
|
+
<server>
|
68
|
+
host 127.0.0.1
|
69
|
+
port 24224
|
70
|
+
username user1
|
71
|
+
password yes_this_is_user1
|
72
|
+
# [warn]: Shared key mismatch address="127.0.0.1" hostname="output-fail1.testing.local"
|
73
|
+
</server>
|
74
|
+
</match>
|
75
|
+
|
76
|
+
<match test4>
|
77
|
+
@type forward
|
78
|
+
flush_interval 0
|
79
|
+
<security>
|
80
|
+
self_hostname output-fail2.testing.local
|
81
|
+
shared_key using_different_key_makes_us_secure
|
82
|
+
</security>
|
83
|
+
<server>
|
84
|
+
host 127.0.0.1
|
85
|
+
port 24224
|
86
|
+
username user3
|
87
|
+
# user3 (user denied): fail
|
88
|
+
password noooooo_this_may_not_be_user3
|
89
|
+
# [warn]: Authentication failed address="127.0.0.1" hostname="output-fail2.testing.local" username="user3"
|
90
|
+
</server>
|
91
|
+
</match>
|
92
|
+
|
93
|
+
<match test5>
|
94
|
+
@type forward
|
95
|
+
flush_interval 0
|
96
|
+
<security>
|
97
|
+
self_hostname output-fail3.testing.local
|
98
|
+
shared_key using_different_key_makes_us_secure
|
99
|
+
</security>
|
100
|
+
<server>
|
101
|
+
# another ip (host rejected): fail
|
102
|
+
# This pattern will work only with Ruby 2.3
|
103
|
+
host "#{Socket.getifaddrs.select{|i| i.addr.ipv4? }.reject{|i| i.addr.ip_address == '127.0.0.1' }.first.addr.ip_address}"
|
104
|
+
port 24224
|
105
|
+
username user1
|
106
|
+
password yes_this_is_user1
|
107
|
+
# [warn]: Anonymous client disallowed address="192.168.1.75" hostname="output-fail3.testing.local"
|
108
|
+
</server>
|
109
|
+
</match>
|
@@ -0,0 +1,36 @@
|
|
1
|
+
<source>
|
2
|
+
@type dummy
|
3
|
+
tag test
|
4
|
+
</source>
|
5
|
+
<source>
|
6
|
+
@type dummy
|
7
|
+
tag test2
|
8
|
+
</source>
|
9
|
+
|
10
|
+
<match test>
|
11
|
+
@type forward
|
12
|
+
flush_interval 0
|
13
|
+
<security>
|
14
|
+
self_hostname output.testing.local
|
15
|
+
shared_key secure_communication_is_awesome
|
16
|
+
</security>
|
17
|
+
<server>
|
18
|
+
host 127.0.0.1
|
19
|
+
port 24224
|
20
|
+
</server>
|
21
|
+
</match>
|
22
|
+
|
23
|
+
<match test2>
|
24
|
+
@type forward
|
25
|
+
flush_interval 0
|
26
|
+
<security>
|
27
|
+
self_hostname output-fail.testing.local
|
28
|
+
shared_key secure_communication_is_not_awesome
|
29
|
+
# input plugin shows warning for wrong shared_key
|
30
|
+
# 2016-08-08 16:27:00 +0900 [warn]: Shared key mismatch address="127.0.0.1" hostname="output-fail.testing.local"
|
31
|
+
</security>
|
32
|
+
<server>
|
33
|
+
host 127.0.0.1
|
34
|
+
port 24224
|
35
|
+
</server>
|
36
|
+
</match>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<source>
|
2
|
+
@type dummy
|
3
|
+
tag test
|
4
|
+
</source>
|
5
|
+
|
6
|
+
<match test>
|
7
|
+
@type forward
|
8
|
+
transport tls
|
9
|
+
tls_insecure_mode true
|
10
|
+
<server>
|
11
|
+
# first server
|
12
|
+
host 127.0.0.1
|
13
|
+
port 24224
|
14
|
+
</server>
|
15
|
+
<buffer>
|
16
|
+
flush_interval 0
|
17
|
+
</buffer>
|
18
|
+
</match>
|