Skip to content

filestorageextension should allow for a maximum storage limit #38620

@mattsains

Description

@mattsains

Component(s)

extension/storage/filestorage

Is your feature request related to a problem? Please describe.

See also: open-telemetry/opentelemetry-collector#12634

Although the file storage extension has fields to garbage collect data on disk, there is no way to set a limit of how much space the extension can use on disk. There are limits that can be set, for example, in the exporter helper in terms of number of items being stored, but not megabytes, and not in total for a single extension.

I think this is an important feature because filling up a disk can be an reliability and performance issue.

Describe the solution you'd like

The filestorage extension should allow for a new field to set the absolute maximum amount of storage used by the extension. If the extension reaches this maximum during a call to Set(), it should automatically compact if appropriate, and, if still at the limit, should return a storage contract-defined error to communicate that it is full and cannot accept new data.

Additionally, fields ReboundNeededThresholdMiB and ReboundTriggerThresholdMiB should be validated to be at or lower than this maximum size

Describe alternatives you've considered

As mentioned, there is exporterhelper limit on queue size, but pdata entries can vary wildly in size, and also a single storage extension can be used for multiple purposes.

Additional context

No response

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions