-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New component: File Receiver #14638
Comments
Hi, there is already a otlpjsonfile receiver that may work for the json format. We should talk about how to adapt or merge with that one |
Can we import data using |
Can we rename 'otlpjsonfile receiver' to 'file receiver'? This will cause a breaking change. @djaglowski @atoulme |
If we can sufficiently generalize the otlpjsonfile receiver, then I think it could reasonably be "renamed". However, I think we might as well just start by copying the codebase. If this component progresses far enough, then we can probably deprecate the otlpjsonfile receiver. |
I feel like this might be a better transition to the new receiver. |
The otlpjsonfile receiver was named as such because it served the purpose of reading from specific files. I don't think this is the same as this receiver, which aims to read from a file, but also replay and do more with it. |
@atoulme Thanks for your opinion. |
If I remember correctly, the rationale was that the a receiver focused on ingesting only one specific format should be named accodingly. What is proposed here is a receiver that would ingest all formats emitted by the corresponding
This is an important point. The replay use case makes sense in its own right, but the primary purpose of the |
@djaglowski Can we accept this receiver? |
I'm willing to sponsor this component without the replay functionality and would be open adding replay oriented features later. |
Hi @pmcollins. Do you still have time to support this recently? |
Hi @atingchen, I'd be happy to provide an initial implementation (JSON, metrics, no compression) based on the work we have already done here. Additional features would need to be done separately. Hi @djaglowski, regarding replay functionality, I'm envisioning making available: 1) reading the timestamps of the metrics at the playhead and waiting the delta duration to send them and 2) setting the metrics timestamp to be current. Both of these could be enabled or disabled via a configuration setting. Can these features be added to this receiver out of the gate? |
The functionality seems reasonable to me, but for the sake of being able to review the code, it would be very helpful to me if we have a fully functioning receiver first. We can add replay immediately afterwards though. |
Ah, got it. Will do it like that then, thanks. |
Sorry for the delay. I'm starting on this now. |
@djaglowski are you happy being the sponsor for this? I assume your answer hasn't change :) |
Yes, thanks for updating the labels accordingly. |
@pmcollins Hi, is there an issue to track the support for reading trace files and rotated files? |
Hi @rboada04, there is not as of yet. Since those capabilities are mentioned above, I thought we could just use this issue. Do you think we should capture them separately? |
At a minimum, I think we need to keep a checklist on this issue of the open items that have been called out. Support for traces & logs, and use of the |
This change adds the ability to replay metrics at the same rate that they were originally received. (I also have a change to update the timestamps to current values but left that out for now to keep the diff smaller.) Link to tracking Issue: #14638
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping |
Not inactive, work is happening in #20440 |
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping |
I actually don't know what the next step is. The feature is still wanted though! |
This receiver has been merged and is included in releases of the contrib collector now. We can close this issue as completed by #20440 and this PR now, right? |
Correct. Closing. |
The purpose and use-cases of the new component
The File Receiver reads the output of a File Exporter and replays it into a collector.
The intent is for this receiver to be a counterpart to the File Exporter. Like the File Exporter, it should ultimately support:
However, initial versions can support just a subset of these features and still be useful.
When it replays telemetry, it should read the timestamps of the next telemetry message and wait for the appropriate amount of time before sending, while setting telemetry timestamps to be current (this can be a setting if preferable). Users should be able to set a multiplier in the config so that telemetry can be sent faster or slower than initially received.
This functionality could be used for development, demos, and for reproducing issues.
Example configuration for the component
Telemetry data types supported
Traces, metrics, and logs.
Is this a vendor-specific component?
Sponsor (optional)
No response
Additional context
@ccordi and I have written an early implementation that can read metrics in JSON format.
The text was updated successfully, but these errors were encountered: