EDK Reference

Extension Classes

extension.DescribeFormat

The currently supported Describe output formats.

extension.ExtensionBase

Basic extension interface that must be implemented by all extensions.

Process Management

process.Invoker

Invoker utility class for invoking subprocesses.

Logging Utilities

Recommended logging configuration for extensions.

meltano.edk.logging.default_logging_config(level: int = 20, timestamps: bool = False, levels: bool = False, json_format: bool = False) None

default/demo structlog configuration.

Parameters:
  • level – logging level.

  • timestamps – include timestamps in the log.

  • levels – include levels in the log.

  • json_format – if True, use JSON format, otherwise use human-readable format.

meltano.edk.logging.parse_log_level(log_level: str) int

Parse a level descriptor into an logging level.

Parameters:

log_level – level descriptor.

Returns:

actual logging level.

Return type:

int

meltano.edk.logging.pass_through_logging_config() None

Pass-through logging configuration.

Setups a logging config using the LOG_LEVEL, LOG_TIMESTAMPS, LOG_LEVELS, and MELTANO_LOG_JSON env vars.

meltano.edk.logging.strtobool(val: str) bool

Convert a string representation of truth to true (1) or false (0).

True values are ‘y’, ‘yes’, ‘t’, ‘true’, ‘on’, and ‘1’; false values are ‘n’, ‘no’, ‘f’, ‘false’, ‘off’, and ‘0’. Raises ValueError if ‘val’ is anything else.

Case is ignored in string comparisons.

Re-implemented from distutils.util.strtobool to avoid importing distutils.

Parameters:

val – The string to convert to a boolean.

Returns:

True if the string represents a truthy value, False otherwise.

Raises:

ValueError – If the string is not a valid representation of a boolean.