-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
[Logging] Legacy and new system configuration #129381
Comments
Pinging @elastic/kibana-core (Team:Core) |
Pinging @elastic/kibana-docs (Team:Docs) |
At the time we enabled the new logging config we had to retain support for the legacy logging system while deprecating it. The new logging system has an entirely different approach and I don't think we knew what issues could be caused when both were enabled, especially when it comes to using the file-type appender. We could add a warning to the docs around potential issues (the ones we have already seen) but I'm sure there are others that the docs won't specifically cover. Maybe we should mention that the switch to the new logging system is assumed to be an 'all-or-nothing' approach? |
IMO, this is a special case of deprecated config parameters because, as opposed to other params that are either not used or renamed, they actually affect 2 coexisting services that may interfere to each other. That's why I think we need special handling of this situation: either via docs, making it very clear that it should be "all-or-nothing". Or we could even go one step further and crash Kibana if we notice mixed usages. What do you think? |
Definitely not ihmo. The legacy and new logging system were meant to be able to coexist during the 7.x 'transition' period (via the 'legacy' appender). AFAIK, it may even be quite complex to try to identify if configurations are provided for both, given most of the config conversion is done in the lower-level legacy config adapter (please don't ask), before core even accesses it. Also, some of our tests on 7.x were effectively using both systems at the same time (and some users might) If we did remove the legacy logging configuration from our public documentation on the |
Agreed Kibana shouldn't crash if both configs are provided -- technically that should still be supported to ease the transition, even it isn't recommended to mix old & new configs. And yeah, we should definitely have legacy logging config info in all IMO what would be useful here is writing a guide-like doc around "how to prepare for kibana's new logging system in 8.0". In that, we could emphasize that we recommend completely switching over from old to new configs at the same time, rather than having a mix of the two. And we could call out log rotation as a "gotcha" that folks need to be careful about if they are trying to use both old & new systems simultaneously. |
I saw a config as follows on 7.16 without
|
@PengYi-Elastic, options can also be provided via CLI |
@afharo , thanks for the direction! It really helps :) |
I just confirmed in 7.16.0, indeed there is
|
👆 cc @elastic/kibana-operations |
We've removed the startup arguments in Sorry about this all, it's an unfortunate longer lasting bug. Open to better UX here but we have to be careful not to break things. Removing the CLI argument from |
@spalger apologies! Taking a mental note for the next one :)
@jbudz I completely agree! Probably removing it from
👆 @elastic/kibana-core we might need to add this to the documentation in the Summarizing the scope of this issue per discussion so far: We need to update the documentation for
TBD: Should we remove |
Context on |
Thanks for the explanation @jbudz! @elastic/kibana-core IMO, that covers the "happy path" (a user with no special logging configuration upgrades from 7.17 to 8.0). However, I wonder if a user running 7.17 and wants to test out the new logging system, |
Part of the reason for introducing To me I think this discussion has a few root causes:
Considering
|
We should also make sure #134462 is clarified as a part of our docs updates |
We should also change the location of https://www.elastic.co/guide/en/kibana/7.17/logging-configuration-migration.html so that it's not located under |
In our user-facing docs about the logging feature (for 7.17, since it was removed for 8.0): https://www.elastic.co/guide/en/kibana/7.17/logging-settings.html
It looks like we don't make a big emphasis on the key differences, and neither warns of the potential unexpected issues that may occur if we have settings for both logging systems.
An example is a use case we recently knew about a user had set the new system with log-rotation, but the "old" log was still actively being written because they had
logging.dest
set up.We already log a deprecation warning for
logging.dest
, but it doesn't warn that having it enabled might affect other features like this case.The text was updated successfully, but these errors were encountered: