Skip to main content

Shared utilities for logging and configuration management

Project description

Spello Consulting Utility Library

A Python utility library for log file management and YAML configuration file management

Details to follow

Example code

from config_schemas import ConfigSchema
from sc_config_mgr import SCConfigManager
from sc_logging import SCLogger

CONFIG_FILE = "config.yaml"


def main():
    print("Hello from sc-utility!")

    # Get our default schema, validation schema, and placeholders
    schemas = ConfigSchema()

    # Initialize the SC_ConfigManager class
    config = SCConfigManager(
        config_file=CONFIG_FILE,
        default_config=schemas.default,  # Replace with your default config if needed
        validation_schema=schemas.validation,  # Replace with your validation schema if needed
        placeholders=schemas.placeholders  # Replace with your placeholders if needed
    )

    config_value = config.get("AmberAPI", "APIKey", default="this is the default value")
    if config_value is None:
        print("Configuration value not found")
    else:
        print(f"Configuration loaded successfully. Sample value: {config_value}")

    # Initialize the SC_Logger class
    logger = SCLogger(config.get_logger_settings())

    logger.log_message("This is a test message at the debug level.", "debug")
    # logger.log_message("This is a test message at the error level.", "error")

    # Setup email
    email_settings = config.get_email_settings()
    logger.register_email_settings(email_settings)

    if logger.send_email("Hello world", "This is a test email from the sc-utility test harness."):
        logger.log_message("Email sent OK.", "detailed")

    if logger.get_fatal_error():
        print("Prior fatal error detected.")
        logger.clear_fatal_error()

    # logger.log_fatal_error("This is a test fatal error message.")

    logger.clear_fatal_error()

if __name__ == "__main__":
    main()

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sc_utility-1.0.0.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sc_utility-1.0.0-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file sc_utility-1.0.0.tar.gz.

File metadata

  • Download URL: sc_utility-1.0.0.tar.gz
  • Upload date:
  • Size: 7.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for sc_utility-1.0.0.tar.gz
Algorithm Hash digest
SHA256 be442c5e5e71bff191572bab71bc0fa20d5086c8691b9477fd7e027908994f0d
MD5 4dae2a0f9dc7069ced76c872ed2e77cf
BLAKE2b-256 b1e9a6367d57b7ce0c764384d05e3864ed30ee4338b8ef175880e0f0571890da

See more details on using hashes here.

Provenance

The following attestation bundles were made for sc_utility-1.0.0.tar.gz:

Publisher: publish.yml on NickElseySpelloC/sc_utility

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sc_utility-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: sc_utility-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 7.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for sc_utility-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 92cb2720d394c336395b78a23d773a7e1b78a27f028cfe0ce3eee47acfa6fb86
MD5 7135784d9d91cbc636d9dc589aa487ca
BLAKE2b-256 f257fb8a25f56d99bcec18a6e23c16d2eb192627fc797934d89fbe9fa24b686c

See more details on using hashes here.

Provenance

The following attestation bundles were made for sc_utility-1.0.0-py3-none-any.whl:

Publisher: publish.yml on NickElseySpelloC/sc_utility

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page