Conversation
…l retries (#46413) * otel: add test for document-level retries * fix linter errors * add dummy assert for dropped events * use deterministic handler from mock-es * assert mock-es metrics * sync go.mod and go.sum * simplify handler logic * update comments * use slices.Contains * go get mock-es latest (cherry picked from commit 2948886) # Conflicts: # NOTICE.txt # go.mod # go.sum # x-pack/filebeat/tests/integration/otel_test.go
|
Cherry-pick of 2948886 has failed: To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally |
|
Pinging @elastic/elastic-agent-data-plane (Team:Elastic-Agent-Data-Plane) |
e333700 to
192d70d
Compare
|
This needs some adjustment from a breaking change in mock-es |
|
This pull request has not been merged yet. Could you please review and merge it @mauri870? 🙏 |
1 similar comment
|
This pull request has not been merged yet. Could you please review and merge it @mauri870? 🙏 |
|
This pull request has not been merged yet. Could you please review and merge it @mauri870? 🙏 |
2 similar comments
|
This pull request has not been merged yet. Could you please review and merge it @mauri870? 🙏 |
|
This pull request has not been merged yet. Could you please review and merge it @mauri870? 🙏 |
|
@mauri870 could you please resolve the conflicts? |
|
Thanks for the reminder. This is on my to-do list, but since it requires some missing backports due to breaking changes in mock-es, I’ve been postponing it because of other priorities. I should have all backports merged this week. |
|
Depends on the following backport #47089. |
|
This pull request has not been merged yet. Could you please review and merge it @mauri870? 🙏 |
|
This pull request is now in conflicts. Could you fix it? 🙏 |
Proposed commit message
This commit adds a test to verify that
elasticsearchexporterappliesdocument-level retries correctly, and that the combination of
otelconsumerand the exporter guarantees at-least-once delivery whena batch is acknowledged.
The test simulates retryable and permanent errors, checks that
max_retriesis respected, and ensures that documents retried aftertemporary failures are ingested while permanent failures are dropped.
Currenty, otelconsumer output metrics are not tracked correctly, and it
will always ACK the whole batch even if there were retries or dropped
events by the exporter.
Checklist
CHANGELOG.next.asciidocorCHANGELOG-developer.next.asciidoc.How to test this PR locally
Related issues
sending_queuefrom [beatreceiver] - Disableforce_attempt_http2and map ES config to elasticsearchexporter #46111This is an automatic backport of pull request otel: add test for otelconsumer + elasticsearchexporter document-level retries #46413 done by Mergify.