-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Separate "Metricbeat index aliases" from "xpack.enabled fork removal", revert fork removal #26480
Comments
All 3 of those examples seem to say that there's a point in time past which kibana will not display data collected using older mechanisms. This is surprising to me since I would have expected aliases on the old data to make them available via the new indices/fields. What am I missing here that requires a hard cut-over? And if we indeed need a hard cut, are we preparing something the user can use to reindex old data into the new format? |
Pinging @elastic/obs-dc (Team:Obs-DC) |
Pinging @elastic/integrations (Team:Integrations) |
@matschaffer the goal was to not carry field aliases with us into the future in such a way that they would need to be maintained through the 9.x release cycle, so using the 8.x breaking change switch was the recommended approach at the time. Since then, because we've run out of some time between now and then and because of "make it minor" changing things slightly, we're considering a different approach overall. @masci / @paulb-elastic We should quickly chat again before anyone picks this up. I noticed it didn't have any labels on it so I am not sure if it's on anybody's radar about but @ravikesarwani and I have just drafted a new plan for Stack Monitoring migration that will change some of this. |
Pinging @elastic/stack-monitoring (Stack monitoring) |
@sayden do you see this making it in for 7.15? Just trying to see if we should get the metrics-* stuff into the UI by then or not -- thanks! |
I've updated this ticket's description and AC to reflect our new strategy that supports more collection modes in 8.x. We still need the work outlined in this ticket so that we can achieve this support. |
@sayden Is there any update on this? Looks like this is a precursor to delivering Elasticsearch, Kibana or Logstash packages. |
UPDATED: 28-10-2021
Related: #24427
Original Context
In this PR: #19747, we outlined a number of requirements for Stack Monitoring data collection.
Points (1) and (2) mentioned here involve making sure that the various Stack Monitoring Metricbeat modules store data "correctly" when
xpack.enabled: false
(the default value), i.e. using ECS paths for all necessary fields and stored in themetricbeat-*
indices. It also involves creating the necessary index aliases from the "legacy" paths to the "correct" ECS paths where the data will now live, so that a query tometricbeat-*
looking formy.old.field.path
will be silently redirected behind the scenes to return the value frommetricbeat-*
:ecs.path.to.same.field
.That work is required to ship in the released modules ASAP so that we can test out the aliases that are in place with real data as easily as possible.
Point (3) above is about removing the
xpack.enabled
fork altogether, i.e. "thenode_stats
metricset will simply ignore the value of thexpack.enabled
setting". We don't want to ship this because this will mean that users who have opted into thexpack.enabled
experience (i.e. most if not all of our Stack Monitoring users, because this is the currently recommended way to use Metricbeat collection for Stack Monitoring) will suddenly have their data written to a new index and any visualizations will need to be updated to point to themetricbeat-*
index (the paths are redirected but the index must be updated). In addition,metricbeat-*
indices do not apply any ILM policies to these data in the same way that the.monitoring
indices do, so this change would silently begin storing data for a different amount of time which could incur costs for the user without them knowing, etc.For this reason, we need to separate these two sets of changes so that we can backport/merge points (1) and (2) above, while reverting (3) only.
NOTE: We have made the decision to continue supporting internal collection and metricbeat (xpack.enabled: true) collection in 8.0.0 and beyond, which makes this ticket even more important.
Previous AC
AC:
xpack.enabled
is set to false (or not set at all), the Elasticsearch, Kibana, Logstash, and Beats modules each store their data in ECS-appropriate fields, with aliases from the legacy fields to the new ECS fields installed as well.xpack.enabled
is set to true for any of these modules, they will continue to do what they have done in the past, i.e. store their data in the.monitoring-*
indices using the legacy paths.xpack.enabled
to false and not provide that option to the user at all, and should write to an appropriately namedmetrics-*
datastream that has the mentioned field aliases installed in its mappings.AC:
xpack.enabled
set to true for a given module, that module's data is queryable from the.monitoring-{module}-mb*
indices and can be queried using the "non-ECS" paths as filters, aggregations, etc.xpack.enabled
not set, or set to false for a given module, that module's data does whatever you all think is best (we don't mind if this data is not visible in the Stack Monitoring UI, because they haven't been before)xpack.enabled
at all for these integrations/packagesThe text was updated successfully, but these errors were encountered: