Skip to content

feat: add storage.total_limit_size support to http output#1865

Merged
joshuabaird merged 3 commits intofluent:masterfrom
JeelDasvani:feat/http-storage-total-limit-size
Feb 12, 2026
Merged

feat: add storage.total_limit_size support to http output#1865
joshuabaird merged 3 commits intofluent:masterfrom
JeelDasvani:feat/http-storage-total-limit-size

Conversation

@JeelDasvani
Copy link
Contributor

What this PR does

Adds storage.total_limit_size support to the HTTP output plugin, allowing users to configure disk-based buffering limits through Kubernetes manifests.

Fixes #1852

Changes

  • Added TotalLimitSize field to the HTTP output struct in http_types.go
  • Added storage.total_limit_size config rendering in the Params() method
  • Added unit test (http_types_test.go) verifying correct rendering
  • Regenerated CRDs via make manifests
  • Regenerated DeepCopy via make generate
  • Regenerated docs via go run ./cmd/doc-gen/main.go

Pattern

This follows the exact same pattern already used in 6 other output plugins:

  • Elasticsearch
  • OpenTelemetry
  • Syslog
  • Loki
  • Kafka
  • OpenSearch

Testing

  • go vet — clean
  • go test ./apis/fluentbit/v1alpha2/... -v — all 12 tests pass
  • CRD YAMLs verified to contain totalLimitSize under the HTTP output spec
  • Docs verified to include the new field

Example usage

apiVersion: fluentbit.fluent.io/v1alpha2
kind: ClusterOutput
metadata:
  name: http-output
spec:
  match: "*"
  http:
    host: example.com
    port: 443
    uri: /logs
    format: json
    totalLimitSize: "512M"

@JeelDasvani JeelDasvani force-pushed the feat/http-storage-total-limit-size branch from 10a7063 to 2120bf9 Compare February 11, 2026 18:51
Fixes fluent#1852

Added the TotalLimitSize field to the HTTP output plugin struct
and its rendering in the Params() method, following the same
pattern used in elasticsearch, opentelemetry, syslog, loki,
kafka, and opensearch output plugins.

Changes:
- Added TotalLimitSize field to HTTP struct in http_types.go
- Added storage.total_limit_size config rendering in Params()
- Added unit test in http_types_test.go
- Regenerated CRDs via make manifests
- Regenerated DeepCopy via make generate
- Regenerated docs via doc-gen

Signed-off-by: JeelDasvani <jeeldasvani@users.noreply.github.com>
Signed-off-by: Jeel Dasvani <71589203+JeelDasvani@users.noreply.github.com>
@JeelDasvani JeelDasvani force-pushed the feat/http-storage-total-limit-size branch from cdb83c0 to 8f6d22c Compare February 12, 2026 02:28
@joshuabaird joshuabaird added the enhancement New feature or request label Feb 12, 2026
@JeelDasvani
Copy link
Contributor Author

Hey @joshuabaird , looks like 7 workflows are awaiting approval to run.
Could you please review and approve them so CI can complete?

Copy link
Collaborator

@joshuabaird joshuabaird left a comment

Choose a reason for hiding this comment

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

Thanks for your contribution, @JeelDasvani!

@joshuabaird joshuabaird merged commit 1b098bf into fluent:master Feb 12, 2026
13 checks passed
@JeelDasvani
Copy link
Contributor Author

JeelDasvani commented Feb 12, 2026

Thanks @joshuabaird for the review and for merging the PR. happy to contribute and looking forward to helping more with the project.

joshuabaird pushed a commit to joshuabaird/fluent-operator that referenced this pull request Feb 13, 2026
Fixes fluent#1852

Added the TotalLimitSize field to the HTTP output plugin struct
and its rendering in the Params() method, following the same
pattern used in elasticsearch, opentelemetry, syslog, loki,
kafka, and opensearch output plugins.

Changes:
- Added TotalLimitSize field to HTTP struct in http_types.go
- Added storage.total_limit_size config rendering in Params()
- Added unit test in http_types_test.go
- Regenerated CRDs via make manifests
- Regenerated DeepCopy via make generate
- Regenerated docs via doc-gen

Signed-off-by: JeelDasvani <jeeldasvani@users.noreply.github.com>
Signed-off-by: Jeel Dasvani <71589203+JeelDasvani@users.noreply.github.com>
joshuabaird pushed a commit to joshuabaird/fluent-operator that referenced this pull request Feb 27, 2026
Fixes fluent#1852

Added the TotalLimitSize field to the HTTP output plugin struct
and its rendering in the Params() method, following the same
pattern used in elasticsearch, opentelemetry, syslog, loki,
kafka, and opensearch output plugins.

Changes:
- Added TotalLimitSize field to HTTP struct in http_types.go
- Added storage.total_limit_size config rendering in Params()
- Added unit test in http_types_test.go
- Regenerated CRDs via make manifests
- Regenerated DeepCopy via make generate
- Regenerated docs via doc-gen

Signed-off-by: JeelDasvani <jeeldasvani@users.noreply.github.com>
Signed-off-by: Jeel Dasvani <71589203+JeelDasvani@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support storage.total_limit_size for http

2 participants