Skip to content

Add UDS API for post-launch log level tuning. #54

@edwbuck

Description

@edwbuck

see spiffe/spire#4785

This commit introduces:

New Data Types

  • Logger : a representation of a logger

    • name : the logger's name, empty for the root logger
    • current_level : the current log level of the logger
    • default_level : the log level of the logger configured
      in the application's config file
  • LoggerMask : which Logger fields must be populated on a
    query response

    • current_level : populate the current log level
    • default_level : populate the default log level

Single Logger Operations:

  • GetLogger : Fetches the log level of the logger

    • Input: name, the logger name
      (optional, unset is root logger)
    • Input: output_mask, the desired logger output fields
      (optional, unset is all fields)
    • Output: a Logger record
  • AdjustLogger : Changes the log level of the logger

    • Input: name, the logger name
      (optional, unset is the root logger)
    • Input: log_level, the logger's new LogLevel
      (required)
    • Output: none

Plural Logger Operations:

  • CountLoggers : Returns the number of loggers

    • Input: none
    • Output: the number of loggers
  • ListLoggers : Show Logger details for a number of loggers

    • Input: filter, the control over which loggers are returned.
      (optional, unset is the root logger with all sub-loggers)
      • filter.by_name : the name of the logger forming the root
        of the returned loggers
      • filter.with_subloggers : a flag indicating if sub-loggers
        are to be included in the response
    • Input: output_mask, the fields to be returned in the output
      • output_mask.current_level : show the current log level of
        the logger
      • output_mask.default_level : show the log level of the logger
        configured in the process config
        file

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions