-
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
Reduce Warn verbosity, switch to Info by default #1931
Comments
Compared to the other Beats, Filebeat is a bit more verbose at INFO level. For example, it prints a message on each bulk publish:
Also it prints an Info on each prospector run, on each file open, etc. @elastic/beats Do we generally want Beats to print stuff periodically by default to help with troubleshooting, or should we move stuff like the above to debug level? Note that a more aggresive |
There are definitively messages which should be moved to debug like In general I think each beat should print some info messages at startup to say that all configs were read and startup is correct, and then during running send some status updates every few seconds so it can be seen that something happens. For the publisher, it could be interesting that every 10 seconds for example |
Yeah, we could replace filebeat specific "Events sent" with a libbeat debug statement that prints selected expvars. That would be quite nice. |
Demoted warnings like "Two requests without a response" or "Response without a request" to the Debug level. To compensate, expvar counters are added for these. These types of warnings are normal in some situations (e.g. at startup) but can indicate serious issues in the other cases. This is part of elastic#1931, which has the overall goal for switching the default logging level to INFO.
Demoted warnings like "Two requests without a response" or "Response without a request" to the Debug level. To compensate, expvar counters are added for these. These types of warnings are normal in some situations (e.g. at startup) but can indicate serious issues in the other cases. This is part of #1931, which has the overall goal for switching the default logging level to INFO.
This is part of elastic#1931 and fixes elastic#1734. Some things to note/discuss: * `-v` does nothing by default now. However, it's possible that you set it to error in the config file and then use -v to go back to info level at the CLI. So I kept the option. * the `logging.level: debug` from the default configuration also doesn nothing now, unless you also specify some selectors. So I added also a `logging.selectors: ["*"]` to the default short config. * While not all of elastic#1931 is done yet, I think we can proceed with the default level change to fix elastic#1734 and then we do more INFO/WARN cleanups in future PRs.
This is part of #1931 and fixes #1734. Some things to note/discuss: * `-v` does nothing by default now. However, it's possible that you set it to error in the config file and then use -v to go back to info level at the CLI. So I kept the option. * the `logging.level: debug` from the default configuration also doesn nothing now, unless you also specify some selectors. So I added also a `logging.selectors: ["*"]` to the default short config. * While not all of #1931 is done yet, I think we can proceed with the default level change to fix #1734 and then we do more INFO/WARN cleanups in future PRs.
Prints the delta since the last period, if it's non-zero. The idea is to help with troubleshooting while still creating relatively little output in the logs. 30s seems like a good compromise. Part of/related to elastic#1931
Prints the delta since the last period, if it's non-zero. The idea is to help with troubleshooting while still creating relatively little output in the logs. 30s seems like a good compromise. Part of/related to #1931
Part of elastic#1931, this applies the metricbeat conventions to the names of the expvars. Most of the counters are still top level integers.
Part of elastic#1931, this adds logic to descend into maps. This is useful especially to support the metricbeat fetches stats. Locking should be safe as the expvar.Map Do function takes a read lock on the map. Note that expvars of type Func are still not included, which is why the memstats are not logged.
Part of #1931, this adds logic to descend into maps. This is useful especially to support the metricbeat fetches stats. Locking should be safe as the expvar.Map Do function takes a read lock on the map. Note that expvars of type Func are still not included, which is why the memstats are not logged.
Part of #1931, this applies the metricbeat conventions to the names of the expvars. Most of the counters are still top level integers.
Part of elastic#1931. Replaces two of the "periodic" Infos with Debugs + expvars.
Part of #1931. Replaces two of the "periodic" Infos with Debugs + expvars.
Transform a debug in Info for the loadbalancing mode, to make sure we have at least an Info on any connection failure. Part of elastic#1931.
Transform a debug in Info for the loadbalancing mode, to make sure we have at least an Info on any connection failure. Part of #1931.
Part of elastic#1931. The default log level was changed to INFO in PR elastic#1952, but the change wasn't reflected in the default configuration files. This fixes it. The issue was signaled in elastic#2183. Also fixes the logging level in the docs.
Replaces the similar functionality from Metricbeat and Winlogbeat, generalizing it to all Beats. Part of elastic#1931.
Replaces the similar functionality from Metricbeat and Winlogbeat, generalizing it to all Beats. Part of #1931.
All done, now. |
The current state is that we log at Error level by default. The historical reason is that Packetbeat could generate a lot of valid warnings (e.g. when traffic contains invalid patterns) which result in slowing it down for the rest of traffic, or filling up the disk, or rotating the logs too fast, etc.
But printing only errors by default is also not great, because:
In general, we want to avoid warnings all together, as they are not friendly to the ops people. For us, warnings (and to some extent INFO messages) are essentially debug messages that we want to have always on. The plan is to replace Warnings with expvar metrics, which can be inspected in realtime via the
-httpprof
option and for which we can also write periodic summaries to the logs.This is a meta ticket to:
The text was updated successfully, but these errors were encountered: