-
Notifications
You must be signed in to change notification settings - Fork 527
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
Configurable metrics-apm datastream pattern. #8182
Comments
@evilezh thanks for opening the issue. We have been thinking about adding something like this, but no concrete plans yet. We might come back with some questions for you in the future, when we've prioritised this. |
One thing I should have noted earlier: for builtin metrics (i.e. those measured by Elastic APM agents) specifically, we will start sending these to a common data stream per namespace as of 8.3. See #7520. |
We have also a problem with this one and starting seeing JVM memory pressure on all our cluster because of it. The problem is if you have like 200 services, which we will reach soon and a index rollover of 10 days you will reach only with metrics index 600 shards / month and if you want to keep the data for 3-4 months than you need a lot of RAM which is not justifiable related to the used disk space. I see it as a high priority issue to have the possibility to merge all the metrics indexes in one as for logs and traces. Thanks! |
@axw any news about this feature? |
@glucaci since 8.3 we've been sending Elastic APM agent built-in metrics to a common data stream. Custom metrics still go to service-specific data streams, and we don't yet have a solution for splitting them out. Are you on a recent version of the stack? Are you still observing issues? |
Currently we don't have any memory issues but the cluster has the maximum shards allocation which means we cannot create any additional shard. (e.g. adding a watcher). There is any plans to do this in a standard way for the Elastic APM agent and Open-Telemetry ? We have a temporary solution which I didn't tried yet from a support ticket, which implies to change the
If this is a good solution why is not coming in the elastic release? Thanks! |
@glucaci which version of the stack are you on? Would you be able to share a document for a few different
This is a workaround that won't work in all situations. It will work if there is no overlap between the metrics across the different services, or if they overlap but the metric definitions do not conflict. If there are conflicts, then it would prevent ingestion. |
Sure, bellow you can see a document from one of the apps.
The document is the same for all the apps but with different fields which are exported with the open-telemetry instrumentation for dotnet runtime In this case it will work the workaround? The same metrics format are used also by the java open-telemetry instrumentation. There are any plans to align also the Elastic APM agent with the ones from open-telemetry and create a "standard" ingestion? Thanks! |
Thanks @glucaci!
The metrics look like they shouldn't collide with any others - I think the workaround is safe in this case.
We do have some plans to map OpenTelemetry metrics to the ones our agents produce. We already do this for JVM runtime metrics, but we haven't yet done it for .NET/CLR metrics. Although we map the JVM metrics, we also record the original OTel metrics; so this means we're still creating application-specific data streams for OTel-instrumented Java programs. I think we'll need to revisit that decision. |
We are experiencing the same issue as the folks above. @axw Have there been any updates? |
@nyp-cgranata we recently added support for configurable routing via ingest pipelines: #10991 In the not too distant future we intend to make at least following changes:
|
Hi - any updates on this? Have just run into this issue myself. We only have 17 services, but ideally want to collate everything to a pattern along the lines of: apm-metrics-{ns} as our requirements are quite simple and we can split things out by queries. Using otel SDK > otel collector > apm > elasticsearch |
Problem in short:
I couldn't find a way to tell - not to split metrics per service. Now it is weird pattern -
metrics-apm.app.<service-name>-<ns>
.Now imagine - I've 100 services ... in 5 namespaces. which would create 500 data streams ... each data stream would have ILM ...
None of those indexes will properly fill up, neither lifecycle will be ok. I would prefer in my case to use common index for all metrics-apm and recycle with single policy.
The text was updated successfully, but these errors were encountered: