Skip to content

Conversation

@eschabell
Copy link
Collaborator

@eschabell eschabell commented Dec 29, 2025

  • Add missing simple_aggregation configuration parameter to both kinesis_streams and kinesis_firehose output plugin documentation
  • Sort all configuration parameters alphabetically per project rules
  • Update .conf examples to use Title_Case for parameters
  • Fix minor typos: extra space in region, stray backtick in role_arn, period instead of comma in compression values list
  • Fix time_key default value from 'false' to 'none' in kinesis.md

Fixes #2316.

Summary by CodeRabbit

  • Documentation
    • Firehose docs updated: added config keys (auto_retry_requests, compression, simple_aggregation, workers, external_id), clarified defaults/descriptions, and refreshed examples including CamelCase key naming and usage notes.
    • Kinesis docs updated: reorganized and expanded configuration options (including region, role_arn, sts_endpoint, log_key, stream, time_key/time_key_format), adjusted wording and examples, and harmonized key capitalization and formatting.

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

@eschabell eschabell requested a review from esmerel December 29, 2025 11:26
@eschabell eschabell self-assigned this Dec 29, 2025
@eschabell eschabell requested review from a team as code owners December 29, 2025 11:26
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 29, 2025

📝 Walkthrough

Walkthrough

Documentation updates for Kinesis Firehose and Kinesis Streams outputs: new and revised configuration keys (including simple_aggregation, auto_retry_requests, compression, external_id, log_key, region, role_arn, sts_endpoint, time_key, time_key_format, workers), plus example blocks updated to use capitalized/public-facing key names.

Changes

Cohort / File(s) Change Summary
Kinesis Firehose docs
pipeline/outputs/firehose.md
Added new config keys (auto_retry_requests, compression) and expanded existing keys (external_id, log_key, region, role_arn, simple_aggregation, sts_endpoint, time_key, time_key_format, workers); updated defaults/descriptions and example blocks to use capitalized/public-facing key names (e.g., Region, Delivery_Stream); adjusted Get Started and worker examples.
Kinesis Streams docs
pipeline/outputs/kinesis.md
Reordered and expanded configuration table; added/updated keys (auto_retry_requests, external_id, log_key, region, role_arn, simple_aggregation, sts_endpoint, time_key, time_key_format) and clarified stream naming; updated examples to capitalized/public-facing keys (e.g., Region, Stream) and adjusted indentation/formatting in sample blocks.

Sequence Diagram(s)

(omitted — changes are documentation/configuration updates without new multi-component control flow)

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Suggested reviewers

  • esmerel
  • cosmo0920

Poem

🐰 I hopped through docs by lantern light,
Adding keys that gleam so bright,
Capitals lined in tidy rows,
Small changes sprung where knowledge grows,
Off I sprint — hooray, good night! ✨

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 clearly and specifically identifies the main changes: adding the simple_aggregation parameter to both Kinesis output plugins and performing cleanup tasks, which matches the PR's primary objectives.
Linked Issues check ✅ Passed The PR successfully addresses issue #2316 by adding the simple_aggregation configuration parameter to both kinesis_firehose and kinesis_streams documentation, as required for the 4.2.2 release.
Out of Scope Changes check ✅ Passed All changes are within scope: adding simple_aggregation parameter, alphabetically sorting parameters, updating examples to Title_Case, and fixing minor typos/errors per project rules.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 59b2a58 and 4630cb7.

📒 Files selected for processing (2)
  • pipeline/outputs/firehose.md
  • pipeline/outputs/kinesis.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • pipeline/outputs/firehose.md
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: kalavt
Repo: fluent/fluent-bit-docs PR: 2294
File: pipeline/inputs/kafka.md:147-168
Timestamp: 2025-12-12T14:30:18.461Z
Learning: In Fluent Bit v4.0.4+, when using AWS MSK IAM authentication (rdkafka.sasl.mechanism: aws_msk_iam), the rdkafka.security.protocol is automatically set to SASL_SSL and the AWS region is auto-detected from the broker hostname for standard MSK endpoints. The aws_msk_iam_cluster_arn parameter was removed - users only need to set rdkafka.sasl.mechanism: aws_msk_iam (and optionally aws_region for custom DNS/PrivateLink).
📚 Learning: 2025-12-12T14:30:18.461Z
Learnt from: kalavt
Repo: fluent/fluent-bit-docs PR: 2294
File: pipeline/inputs/kafka.md:147-168
Timestamp: 2025-12-12T14:30:18.461Z
Learning: In Fluent Bit v4.0.4+, when using AWS MSK IAM authentication (rdkafka.sasl.mechanism: aws_msk_iam), the rdkafka.security.protocol is automatically set to SASL_SSL and the AWS region is auto-detected from the broker hostname for standard MSK endpoints. The aws_msk_iam_cluster_arn parameter was removed - users only need to set rdkafka.sasl.mechanism: aws_msk_iam (and optionally aws_region for custom DNS/PrivateLink).

Applied to files:

  • pipeline/outputs/kinesis.md
🔇 Additional comments (2)
pipeline/outputs/kinesis.md (2)

17-32: ✅ Configuration parameters correctly updated and alphabetically sorted.

All PR objectives have been successfully addressed:

  • simple_aggregation parameter added (line 27) with clear description
  • Parameters verified in strict alphabetical order
  • time_key default correctly set to _none_ (line 30)
  • Past review feedback incorporated: "cross-account" hyphenation (line 26), Streams terminology clarified in stream description (line 28), and external_id grammar improved (line 21)

66-72: Configuration example correctly uses Title_Case parameter names.

The .conf example properly uses Title_Case for parameter names (Name, Match, Region, Stream), aligning with the project's documentation standards.


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.

@eschabell
Copy link
Collaborator Author

@esmerel review request for docs update needed to match 4.2.2 release.

@eschabell eschabell added the waiting-on-review Waiting on a review from mainteners label Dec 29, 2025
Copy link
Contributor

@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: 5

🧹 Nitpick comments (2)
pipeline/outputs/firehose.md (2)

28-28: Avoid "simple" terminology in description per style guidelines.

The vale FluentBit.Simplicity rule flags words like "simple" that may imply ease to users when the feature could be complex. The parameter name cannot be changed, but the description can be reworded to avoid this term.

🔎 Proposed revision
- | `simple_aggregation` | Enable simple aggregation to combine multiple records into single API calls. This reduces the number of requests and can improve throughput. | `false` |
+ | `simple_aggregation` | Enable record aggregation to combine multiple records into single API calls. This reduces the number of requests and can improve throughput. | `false` |

28-28: Rephrase description to avoid "simple" terminology per style guidelines.

The vale FluentBit.Simplicity rule flags words like "simple" that may imply the feature is easy when users might find it complex. Reword the description to avoid this term while keeping the meaning clear.

🔎 Proposed revision
- | `simple_aggregation` | Enable simple aggregation to combine multiple records into single API calls. This reduces the number of requests and can improve throughput. | `false` |
+ | `simple_aggregation` | Enable record aggregation to combine multiple records into single API calls. This reduces the number of requests and can improve throughput. | `false` |
📜 Review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f4d0117 and 009ea11.

📒 Files selected for processing (2)
  • pipeline/outputs/firehose.md
  • pipeline/outputs/kinesis.md
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-12-12T14:30:18.461Z
Learnt from: kalavt
Repo: fluent/fluent-bit-docs PR: 2294
File: pipeline/inputs/kafka.md:147-168
Timestamp: 2025-12-12T14:30:18.461Z
Learning: In Fluent Bit v4.0.4+, when using AWS MSK IAM authentication (rdkafka.sasl.mechanism: aws_msk_iam), the rdkafka.security.protocol is automatically set to SASL_SSL and the AWS region is auto-detected from the broker hostname for standard MSK endpoints. The aws_msk_iam_cluster_arn parameter was removed - users only need to set rdkafka.sasl.mechanism: aws_msk_iam (and optionally aws_region for custom DNS/PrivateLink).

Applied to files:

  • pipeline/outputs/kinesis.md
  • pipeline/outputs/firehose.md
🪛 GitHub Actions: Lint PRs
pipeline/outputs/kinesis.md

[warning] 27-27: Vale: FluentBit.Simplicity - Avoid words like 'simple' that imply ease of use.

pipeline/outputs/firehose.md

[warning] 28-28: Vale: FluentBit.Simplicity - Avoid words like 'simple' that imply ease of use.

🪛 GitHub Check: runner / vale
pipeline/outputs/kinesis.md

[warning] 27-27:
[vale] reported by reviewdog 🐶
[FluentBit.Simplicity] Avoid words like "simple" that imply ease of use, because the user may find this action difficult.

Raw Output:
{"message": "[FluentBit.Simplicity] Avoid words like "simple" that imply ease of use, because the user may find this action difficult.", "location": {"path": "pipeline/outputs/kinesis.md", "range": {"start": {"line": 27, "column": 33}}}, "severity": "WARNING"}

pipeline/outputs/firehose.md

[warning] 28-28:
[vale] reported by reviewdog 🐶
[FluentBit.Simplicity] Avoid words like "simple" that imply ease of use, because the user may find this action difficult.

Raw Output:
{"message": "[FluentBit.Simplicity] Avoid words like "simple" that imply ease of use, because the user may find this action difficult.", "location": {"path": "pipeline/outputs/firehose.md", "range": {"start": {"line": 28, "column": 33}}}, "severity": "WARNING"}

🪛 LanguageTool
pipeline/outputs/kinesis.md

[grammar] ~26-~26: Use a hyphen to join words.
Context: ... ARN of an IAM role to assume (for cross account access). | none | | `simple_ag...

(QB_NEW_EN_HYPHEN)

pipeline/outputs/firehose.md

[style] ~23-~23: To form a complete sentence, be sure to include a subject.
Context: ...Specify an external ID for the STS API. Can be used with the role_arn parameter i...

(MISSING_IT_THERE)


[grammar] ~27-~27: Use a hyphen to join words.
Context: ... ARN of an IAM role to assume (for cross account access). | none | | `simple_ag...

(QB_NEW_EN_HYPHEN)

🔇 Additional comments (7)
pipeline/outputs/kinesis.md (3)

27-27: Address Vale style warning on simple_aggregation parameter.

The word "simple" in the parameter description triggers the FluentBit.Simplicity style rule, which suggests avoiding language that implies ease of use. Consider rephrasing to be more neutral and descriptive of the actual behavior (e.g., "Aggregate" or "Batch aggregation").

This is flagged in the pipeline (Vale warning), and while it's a style preference rather than a functional issue, you may want to rephrase to improve compliance with project style guidelines.


15-32: Configuration table changes look good.

The parameter table correctly reflects:

  • Alphabetical ordering per project rules
  • New simple_aggregation, endpoint, external_id, log_key, port, sts_endpoint, and time_key_format parameters documented
  • Correct default value for time_key updated to _none_ (from 'false')
  • Appropriate descriptions for each parameter

68-71: fluent-bit.conf example properly uses Title_Case.

The configuration example has been correctly updated to use Title_Case for parameter names (Region, Stream), aligning with the PR objectives and Fluent Bit configuration file conventions.

pipeline/outputs/firehose.md (4)

66-72: Configuration examples properly use Title_Case and formatting.

Both .conf configuration examples correctly use Title_Case for parameter names (Name, Match, Region, Delivery_Stream, Workers) and maintain proper alignment and consistency.

Also applies to: 118-124


17-32: Configuration table meets PR objectives.

The configuration parameter table successfully:

  • Adds the simple_aggregation parameter as per issue #2316
  • Maintains alphabetical ordering of all entries
  • Documents new parameters (auto_retry_requests, compression, log_key, role_arn, sts_endpoint, time_key_format, workers) with clear descriptions and defaults
  • Corrects time_key default to _none_ as intended

Aside from the grammar/style refinements flagged separately, the parameter documentation is comprehensive and well-structured.


17-32: Configuration table successfully addresses all PR objectives.

The parameter table:

  • ✓ Adds simple_aggregation as primary objective (line 28, default false)
  • ✓ Maintains alphabetical ordering across all entries
  • ✓ Documents new parameters comprehensively (auto_retry_requests, compression, log_key, role_arn, sts_endpoint, time_key_format, workers)
  • ✓ Corrects time_key default value to _none_

Structure and descriptions are clear; aside from the grammar refinements flagged separately, the documentation is well-formatted.


66-72: Configuration examples correctly apply Title_Case formatting.

Both .conf configuration blocks properly use Title_Case for parameter names (Name, Match, Region, Delivery_Stream, Workers) with correct alignment. YAML examples use lowercase appropriately for that format. Formatting is consistent across examples.

Also applies to: 118-124

Copy link
Contributor

@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: 1

♻️ Duplicate comments (3)
pipeline/outputs/firehose.md (2)

23-23: Reword fragment sentence to form a complete sentence.

The description for external_id contains an incomplete sentence: "Can be used with the role_arn parameter..." lacks a subject. This was flagged in a previous review and remains unresolved.

🔎 Proposed fix
- | `external_id` | Specify an external ID for the STS API. Can be used with the `role_arn` parameter if your role requires an external ID. | _none_ |
+ | `external_id` | Specify an external ID for the STS API. It can be used with the `role_arn` parameter if your role requires an external ID. | _none_ |

27-27: Hyphenate compound adjective "cross-account".

The phrase "cross account access" should use a hyphen to form the compound adjective. This was flagged in a previous review and remains unresolved.

🔎 Proposed fix
- | `role_arn` | ARN of an IAM role to assume (for cross account access). | _none_ |
+ | `role_arn` | ARN of an IAM role to assume (for cross-account access). | _none_ |
pipeline/outputs/kinesis.md (1)

26-26: Hyphenate compound adjective "cross-account".

The phrase "cross account access" should use a hyphen to form the compound adjective. This was flagged in a previous review and remains unresolved.

🔎 Proposed fix
- | `role_arn` | ARN of an IAM role to assume (for cross account access). | _none_ |
+ | `role_arn` | ARN of an IAM role to assume (for cross-account access). | _none_ |
📜 Review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 009ea11 and c320002.

📒 Files selected for processing (2)
  • pipeline/outputs/firehose.md
  • pipeline/outputs/kinesis.md
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-12-12T14:30:18.461Z
Learnt from: kalavt
Repo: fluent/fluent-bit-docs PR: 2294
File: pipeline/inputs/kafka.md:147-168
Timestamp: 2025-12-12T14:30:18.461Z
Learning: In Fluent Bit v4.0.4+, when using AWS MSK IAM authentication (rdkafka.sasl.mechanism: aws_msk_iam), the rdkafka.security.protocol is automatically set to SASL_SSL and the AWS region is auto-detected from the broker hostname for standard MSK endpoints. The aws_msk_iam_cluster_arn parameter was removed - users only need to set rdkafka.sasl.mechanism: aws_msk_iam (and optionally aws_region for custom DNS/PrivateLink).

Applied to files:

  • pipeline/outputs/kinesis.md
  • pipeline/outputs/firehose.md
🪛 LanguageTool
pipeline/outputs/kinesis.md

[grammar] ~26-~26: Use a hyphen to join words.
Context: ... ARN of an IAM role to assume (for cross account access). | none | | `simple_ag...

(QB_NEW_EN_HYPHEN)

pipeline/outputs/firehose.md

[style] ~23-~23: To form a complete sentence, be sure to include a subject.
Context: ...Specify an external ID for the STS API. Can be used with the role_arn parameter i...

(MISSING_IT_THERE)


[grammar] ~27-~27: Use a hyphen to join words.
Context: ... ARN of an IAM role to assume (for cross account access). | none | | `simple_ag...

(QB_NEW_EN_HYPHEN)

🔇 Additional comments (4)
pipeline/outputs/firehose.md (2)

19-32: Configuration parameters are properly alphabetized and documented.

The expanded parameter table includes the newly added simple_aggregation, compression, auto_retry_requests, log_key, sts_endpoint, time_key_format, and workers parameters, all correctly sorted alphabetically. Descriptions and defaults are clear.


68-71: Configuration examples use consistent Title_Case formatting.

Both .conf examples in the "Get started" and "Worker support" sections correctly use Title_Case for parameter names (Name, Match, Region, Delivery_Stream, Workers), aligning with project conventions.

Also applies to: 119-123

pipeline/outputs/kinesis.md (2)

19-32: Configuration parameters are properly alphabetized and documented.

The expanded parameter table includes the newly added simple_aggregation, endpoint, external_id, log_key, port, sts_endpoint, time_key, time_key_format, and workers parameters, all correctly sorted alphabetically. The time_key default is correctly set to _none_ per PR objectives.


68-71: Configuration example uses consistent Title_Case formatting.

The .conf example in the "Get started" section correctly uses Title_Case for parameter names (Name, Match, Region, Stream), aligning with project conventions.

@eschabell eschabell force-pushed the erics_kinesis_update_422 branch 2 times, most recently from c3bbbb1 to 59b2a58 Compare December 29, 2025 12:51
Copy link
Contributor

@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: 1

♻️ Duplicate comments (1)
pipeline/outputs/kinesis.md (1)

26-26: Fix hyphenation in compound adjective for role_arn description.

The phrase "cross account access" should use a hyphen to form the compound adjective "cross-account access". This was flagged in a previous review and needs to be applied here as it was in firehose.md.

🔎 Proposed fix
-| `role_arn` | ARN of an IAM role to assume (for cross account access). | _none_ |
+| `role_arn` | ARN of an IAM role to assume (for cross-account access). | _none_ |
📜 Review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between c3bbbb1 and 59b2a58.

📒 Files selected for processing (2)
  • pipeline/outputs/firehose.md
  • pipeline/outputs/kinesis.md
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-12-12T14:30:18.461Z
Learnt from: kalavt
Repo: fluent/fluent-bit-docs PR: 2294
File: pipeline/inputs/kafka.md:147-168
Timestamp: 2025-12-12T14:30:18.461Z
Learning: In Fluent Bit v4.0.4+, when using AWS MSK IAM authentication (rdkafka.sasl.mechanism: aws_msk_iam), the rdkafka.security.protocol is automatically set to SASL_SSL and the AWS region is auto-detected from the broker hostname for standard MSK endpoints. The aws_msk_iam_cluster_arn parameter was removed - users only need to set rdkafka.sasl.mechanism: aws_msk_iam (and optionally aws_region for custom DNS/PrivateLink).

Applied to files:

  • pipeline/outputs/firehose.md
  • pipeline/outputs/kinesis.md
🪛 LanguageTool
pipeline/outputs/kinesis.md

[grammar] ~26-~26: Use a hyphen to join words.
Context: ... ARN of an IAM role to assume (for cross account access). | none | | `simple_ag...

(QB_NEW_EN_HYPHEN)

🔇 Additional comments (3)
pipeline/outputs/kinesis.md (1)

27-27: Approve simple_aggregation parameter addition.

The simple_aggregation parameter is correctly positioned in alphabetical order with clear description and default value.

pipeline/outputs/firehose.md (2)

20-20: Verify compression parameter documentation matches implementation.

The compression parameter is newly documented with support for gzip and arrow. Ensure the parameter names and compile-time availability notes match the actual Fluent Bit implementation for this 4.2.2 release.


28-28: Approve simple_aggregation parameter addition.

The simple_aggregation parameter is correctly positioned in alphabetical order with clear description and default value, addressing the PR objective for the 4.2.2 release.

…d cleanup

- Add missing simple_aggregation configuration parameter to both
  kinesis_streams and kinesis_firehose output plugin documentation
- Sort all configuration parameters alphabetically per project rules
- Update .conf examples to use Title_Case for parameters
- Fix minor typos: extra space in region, stray backtick in role_arn,
  period instead of comma in compression values list
- Fix time_key default value from 'false' to '_none_' in kinesis.md

Fixes fluent#2316.

Signed-off-by: Eric D. Schabell <eric@schabell.org>
@eschabell eschabell force-pushed the erics_kinesis_update_422 branch from 59b2a58 to 4630cb7 Compare December 29, 2025 13:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

4.2.2 waiting-on-review Waiting on a review from mainteners

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Kinesis firehose and stream output plugins missing new simple_aggregation configuration parameter

1 participant