aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel/src/logger.erl
AgeCommit message (Collapse)Author
2018-10-03[logger] Add handler callback filter_config/1Siri Hansen
This function is called when a logger API function for fetching handler configuration is called. The point is to allow the handler to remove internal data fields that it might have stored in the configuration database, before returning the handler configuration to the caller. An example of such internal data are the 'handler_pid' and 'mode_tab' fields that logger_std_h and logger_disk_log_h store in their configuration maps.
2018-10-03[logger] Add update_handler_config/3Siri Hansen
This function is similar to set_handler_config/3, but calls the handler callback changing_config/3 with the first parameter SetOrUpdate=update.
2018-09-12[logger] Include single_line option to report_cbSiri Hansen
If the report callback function has two arguments, the second argument is a map with options to limit the size of the log event. To even allow a better formatting when the event shall be printed on a single line, the new option single_line is now included in this argument.
2018-09-12[logger] Refactor, and add error detection for configurationSiri Hansen
2018-09-12[logger] Remove encoding option from logger_formatterSiri Hansen
The encoding option was introduced in commit 270d909696a753af022df72a404c73f2895b4a02, to allow report callbacks to format according to a given encoding. There was, however, no connection between this encoding option, and the encoding of the device to which the logger handler was writing. Since a formatter is defined to return unicode:chardata(), and in order to avoid mismatch with the encoding of the device, the encoding option is now removed from the formatter. The handler itself must make sure that it does not write illegal data to its device.
2018-09-12[logger] Refactor some logger internalsSiri Hansen
2018-07-16kernel: Add logger:set_application_level/2Lukas Larsson
OTP-15146
2018-07-13[logger] Allow setting kernel parameter 'logger_level' to 'all'Siri Hansen
2018-07-13[logger] Allow report callback with two arguments returning a stringSiri Hansen
If the report callback is a fun of arity 2, then the second argument is a map with the keys 'encoding', 'depth' and 'chars_limit', and the fun must return a string which is size limited according to the given depth and chars_limit. If the report callback is a fun of arity 1, then it must return a tuple containing a format string and a list of arguments. The formatter will produce the string, and limit it's size.
2018-07-13[logger] Improve spec for set_handler_config/3 and set_primary_config/2Siri Hansen
Specify which keys and associated values are allowed.
2018-06-18Update copyright yearHenrik Nord
2018-06-11[logger] Move the disk log options to the handler config mapPeter Andersson
Conflicts: lib/kernel/src/logger_disk_log_h.erl
2018-06-11[logger] Split config() in two: primary_config() and handler_config()Siri Hansen
2018-06-11[logger] Change default primary log level to 'notice'Siri Hansen
Log events issued via error_logger:info_msg or error_logger:info_report are now forwarded to Logger with level 'notice' instead of 'info'. Log events issued by gen_* behaviours are also changed from level 'info' to level 'notice'. Progress reports are still 'info', and can therefore easily be included/excluded by changing the primary log level. By default, they are not logged.
2018-06-08[logger] Update return values from get_handler_config/0,1 and get_config/0Siri Hansen
Module and Id are now always included as fields in Config, so these are no longer returned as separate elements.
2018-06-08[logger] Change name of handler specific config field from ?MODULE to 'config'Siri Hansen
And add field 'module' in handler config.
2018-06-08[logger] Add more functions for reading configurationSiri Hansen
Added: * logger:get_config() - replaces i(), returns all Logger configuration, i.e. primary and handler config, and module levels * logger:get_handler_ids() -> [HandlerId] * logger:get_handler_config() -> [{HandlerId,Module,Config}] Removed: * logger:i/1, will probably be replaced in a later release.
2018-06-08[logger] Change concept of 'global' configuration to 'primary' configurationSiri Hansen
Function names changed: get/set/update_logger_config -> get/set/update_primary_config add/remove_logger_filter -> add/remove_primary_filter
2018-06-08[logger] Don't use error_logger:warning_map/0Siri Hansen
The warning map was added to allow backwards compatiblity with error_logger event handlers that were not prepared to receive warning reports. error_logger still uses this internally, if legacy error logger event handlers are installed. But Logger does not use it for new Logger handlers.
2018-06-08[logger] Add configurable log levels 'all' and 'none'Siri Hansen
New default for handlers is 'all'.
2018-06-08[logger] Update interface for setting/unsetting module levelSiri Hansen
* Level can now be set/unset for multiple modules in one call. * Added functions get_module_level/0 and get_module_level/1.
2018-06-08[logger] Change base OTP domain from [beam,erlang,otp] to [otp]Siri Hansen
2018-05-23Update documentation of logger and error_loggerSiri Hansen
2018-05-23Change type name logger:log() to logger:log_event()Siri Hansen
2018-05-23Rename module logger_simple to logger_simple_hSiri Hansen
Also, change HandlerId from logger_simple to simple.
2018-05-23Change env var logger_log_progress to logger_progress_reportsSiri Hansen
2018-05-23Remove HandlerId from handler callback functions and add it to ConfigSiri Hansen
2018-05-23Update Logger documentationSiri Hansen
2018-05-23Rename reset_module_level to unset_module_levelSiri Hansen
2018-05-23Add logger:update_formatter_config/2,3Siri Hansen
2018-05-23Set legacy_header=true for kernel's default handler onlySiri Hansen
2018-05-23Use system_time instead of monotonic_time as timestamp in loggerSiri Hansen
2018-05-21Add update_logger_config/1 and update_handler_config/2 to loggerSiri Hansen
2018-05-21Hide handlers field in logger config map from the APISiri Hansen
This field contains the index of all installed handlers. It is internal and can not be altered by the user, and should therefore not be visible.
2018-05-21Remove logger env vars for format_depth, max_size and utcSiri Hansen
These are replaced by new config handling and must not be used any more.
2018-05-21logger: Rework configuration of loggerLukas Larsson
Most logger configuration that was possible through kernel application variables have been moved into a common 'logger' application environment in kernel. Now all the configuration possible through the logger API can be done as sys config. The handler started by kernel has been renamed to 'default' instead of logger_std_h. There is a new logger:setup_handlers/1 function that given an application name can be used to setup handlers in other applications.
2018-05-08Update some specs in loggerSiri Hansen
2018-05-07Add logger:update_process_metadata/1Siri Hansen
2018-04-26Catch badarg in logger:get_format_depth/0Siri Hansen
This env var lookup may fail during termination, when application_controller process has terminated before logger.
2018-04-26Add loggerSiri Hansen