Skip to content

Conversation

@eschabell
Copy link
Contributor

@eschabell eschabell commented Nov 25, 2025

in_blob: added missing configuration descriptions.

Added descriptions for 8 configuration options that were missing them:

  • exclude_pattern
  • database_file
  • upload_success_action
  • upload_success_suffix
  • upload_success_message
  • upload_failure_action
  • upload_failure_suffix
  • upload_failure_message

Fixes #11204


Testing
Before we can approve your change; please submit the following in a comment:

  • [N/A] Example configuration file for the change
  • [N/A] Debug log output from testing the change
  • [N/A] Attached Valgrind output that shows no leaks or memory corruption was found
  • [N/A] Run local packaging test showing all targets (including any new ones) build.
  • [N/A] Set ok-package-test label to test for all targets (requires maintainer to do).

Documentation

Backporting

  • [N/A] Backport to latest stable release.

Fluent Bit is licensed under Apache 2.0, by submitting this pull request I understand that this code will be released under the terms of that license.

Summary by CodeRabbit

  • Documentation
    • Enhanced configuration parameter descriptions for improved clarity and user guidance.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Nov 25, 2025

Walkthrough

String descriptions are added to configuration option entries in the Blob input plugin's config map initializer. No functional logic, control flow, error handling, or data structure signatures are modified; the change is purely descriptive documentation for config keys.

Changes

Cohort / File(s) Summary
Blob input plugin configuration descriptions
plugins/in_blob/blob.c
Added missing description strings to struct flb_config_map entries for various configuration options, enabling display when the plugin is invoked with the help flag

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

  • Single file affected with repetitive, cosmetic changes (string descriptions)
  • No logic modifications, control flow changes, or structural alterations
  • Straightforward validation of description text accuracy and completeness

Suggested reviewers

  • edsiper
  • cosmo0920
  • patrick-stephens

Poem

🐰 Hop, hop, descriptions bloom!
Config keys no longer in gloom,
Help flags now shall clearly say,
What each option does today!
Clarity hops the plugins' way! 🌟

Pre-merge checks and finishing touches

✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'in_blob: added missing configuration descriptions. Fixes #11204.' directly reflects the main change - adding missing configuration descriptions to the in_blob plugin and references the related issue.
Linked Issues check ✅ Passed The PR fully addresses issue #11204 by adding descriptions for all eight missing configuration options (exclude_pattern, database_file, upload_success_action, upload_success_suffix, upload_success_message, upload_failure_action, upload_failure_suffix, upload_failure_message) in the in_blob plugin configuration map.
Out of Scope Changes check ✅ Passed Only descriptive text was added to configuration entries; no functional logic, control flow, or error handling changes were introduced, keeping all changes in scope with the issue requirements.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
plugins/in_blob/blob.c (1)

1011-1027: Upload success options are correctly and clearly described

The upload_success_action, upload_success_suffix, and upload_success_message descriptions match the implemented behaviors (delete/emit_log/add_suffix and how suffix/message are consumed). If you want to be extra explicit, you could mention that the default action is “none” when upload_success_action is unset, but it’s not required.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f4108db and fe309e7.

📒 Files selected for processing (1)
  • plugins/in_blob/blob.c (2 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-11-21T06:23:29.770Z
Learnt from: cosmo0920
Repo: fluent/fluent-bit PR: 11171
File: include/fluent-bit/flb_lib.h:52-53
Timestamp: 2025-11-21T06:23:29.770Z
Learning: In Fluent Bit core (fluent/fluent-bit repository), function descriptions/documentation are not required for newly added functions in header files.

Applied to files:

  • plugins/in_blob/blob.c
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (31)
  • GitHub Check: pr-windows-build / call-build-windows-package (Windows 64bit (Arm64), amd64_arm64, -DCMAKE_SYSTEM_NAME=Windows -DCMA...
  • GitHub Check: pr-windows-build / call-build-windows-package (Windows 32bit, x86, x86-windows-static, 3.31.6)
  • GitHub Check: pr-windows-build / call-build-windows-package (Windows 64bit, x64, x64-windows-static, 3.31.6)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_COMPILER_STRICT_POINTER_TYPES=On, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_ARROW=On, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_SIMD=On, 3.31.6, clang, clang++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_SIMD=Off, 3.31.6, clang, clang++)
  • GitHub Check: run-ubuntu-unit-tests (-DSANITIZE_UNDEFINED=On, 3.31.6, clang, clang++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_SIMD=On, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_SANITIZE_THREAD=On, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_COVERAGE=On, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_SANITIZE_THREAD=On, 3.31.6, clang, clang++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_SIMD=Off, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_SANITIZE_MEMORY=On, 3.31.6, clang, clang++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_SANITIZE_MEMORY=On, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DSANITIZE_ADDRESS=On, 3.31.6, clang, clang++)
  • GitHub Check: run-ubuntu-unit-tests (-DSANITIZE_UNDEFINED=On, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_JEMALLOC=Off, 3.31.6, clang, clang++)
  • GitHub Check: run-ubuntu-unit-tests (-DSANITIZE_ADDRESS=On, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_SMALL=On, 3.31.6, clang, clang++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_JEMALLOC=Off, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_JEMALLOC=On, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_SMALL=On, 3.31.6, gcc, g++)
  • GitHub Check: run-ubuntu-unit-tests (-DFLB_JEMALLOC=On, 3.31.6, clang, clang++)
  • GitHub Check: pr-compile-system-libs (-DFLB_PREFER_SYSTEM_LIBS=On, 3.31.6, clang, clang++, ubuntu-24.04, clang-14)
  • GitHub Check: pr-compile-system-libs (-DFLB_PREFER_SYSTEM_LIBS=On, 3.31.6, gcc, g++, ubuntu-22.04, clang-12)
  • GitHub Check: pr-compile-centos-7
  • GitHub Check: pr-compile-without-cxx (3.31.6)
  • GitHub Check: pr-compile-system-libs (-DFLB_PREFER_SYSTEM_LIBS=On, 3.31.6, clang, clang++, ubuntu-22.04, clang-12)
  • GitHub Check: pr-compile-system-libs (-DFLB_PREFER_SYSTEM_LIBS=On, 3.31.6, gcc, g++, ubuntu-24.04, clang-14)
  • GitHub Check: PR - fuzzing test
🔇 Additional comments (2)
plugins/in_blob/blob.c (2)

991-1002: Exclude and database option descriptions look accurate

The exclude_pattern and database_file descriptions align with how ctx->exclude_pattern and ctx->database_file are actually used (filtering files before processing and backing the SQLite tracking DB). No changes needed.


1029-1045: Upload failure options mirror success semantics appropriately

The upload_failure_action, upload_failure_suffix, and upload_failure_message descriptions correctly reflect the failure-handling paths and mirror the success-case wording, which keeps the help text consistent. Looks good as-is.

@eschabell
Copy link
Contributor Author

@cosmo0920 would you mind taking a look at this, it's not a complex fix, descriptions for options that were missing. Not sure why the testing failed?

@leonardo-albertovich
Copy link
Contributor

You can ignore that failure, another PR should be opened to fix that test case according to the log :

 Test sw_success...                              [2025/11/25 13:28:37.951414000] [ info] [fluent bit] version=4.2.1, commit=92f61eedc7, pid=40452
[2025/11/25 13:28:37.952224000] [ info] [storage] ver=1.5.4, type=memory, sync=normal, checksum=off, max_chunks_up=128
[2025/11/25 13:28:37.952692000] [ info] [simd    ] disabled
[2025/11/25 13:28:37.952697000] [ info] [cmetrics] version=1.0.5
[2025/11/25 13:28:37.953087000] [ info] [ctraces ] version=0.6.6
[2025/11/25 13:28:37.954058000] [ info] [input:lib:lib.0] initializing
[2025/11/25 13:28:37.954091000] [ info] [input:lib:lib.0] storage_strategy='memory' (memory only)
[2025/11/25 13:28:37.955935000] [ info] [sp] stream processor started
[2025/11/25 13:28:37.956348000] [ info] [engine] Shutdown Grace Period=5, Shutdown Input Grace Period=2
Error: 1/25 13:28:39.55176000] [error] [net] TCP connection failed: 127.0.0.1:12800 (Connection refused)
Error: 1/25 13:28:39.55207000] [error] [output:skywalking:skywalking.0] failed to establish connection to 127.0.0.1:12800
[2025/11/25 13:28:39.55256000] [ warn] [engine] failed to flush chunk '40452-1764077317.957753000.flb', retry in 8 seconds: task_id=0, input=lib.0 > output=skywalking.0 (out_id=0)
[2025/11/25 13:28:40.88249000] [ warn] [engine] service will shutdown in max 5 seconds
[2025/11/25 13:28:40.88320000] [ info] [engine] pausing all inputs..

@leonardo-albertovich
Copy link
Contributor

The issue seems to be something weird happening in macos when setting and getting the environment variable that determines if the API call is made or mocked.

test case mock set
output plugin mock check

Personally that environment variable should be set by the runner itself but I don't think it's wise to do the getenv call on each API call in the output plugin, worst case scenario (if the mechanism is retained) it should be checked on init and stored in the instances context.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Blob input plugin - Missing descriptions for various configuration options.

2 participants