Skip to main content

No project description provided

Project description

Custom Logger CloudCity

To unify the way we log and alert to Google Cloud Logger and Sentry, we have created this package.

Changelog

1.0.2 Removed the explicit requirement of havint the CLOUD_LOGGER_NAME environment var set. When none is set, fall back on the default logger

Example

How to use:

  1. Include the package in your project by doing pip install custom-logger-cloudcity
  2. Simply import the module!

Below is an examlpe how to use

import os

os.environ.update({"GOOGLE_APPLICATION_CREDENTIALS": "{Location to you Service account key}"})
os.environ.update({"CLOUD_LOGGER_NAME": "nice_test_logger"})  # Give a name the app will log to
os.environ.update({"ENV": "development"})
# We need to set the environment vars before importing the custom_logger
# You can do so as this example or just set it in the machine wide environment
from custom_logger import custom_logger

if __name__ == '__main__':
    # A message as a string will end up in as a textPayload in Google Cloud Logging
    custom_logger.info("Hello My Friend")
    # Below will not be logged to Google Cloud Logging
    custom_logger.error("not ok")
    # A message as an argument will end up in as a jsonPayload in Google Cloud Logging
    custom_logger.info(some_message="This is a test log in a jsonPayload")
    # # An example with multiple arguments
    custom_logger.info(
        some_message="This is a test log in a jsonPayload",
        more_info="It has more info",
        and_even_more="These can all be metrics and stuff",
        but="We need to make sure that we catch the logging exceptions and print the whole lot",
    )
    # With message overwrite
    custom_logger.info(
        message="Let's overwrite the message node",
        some_message="This is a test log in a jsonPayload",
        more_info="It has more info",
        and_even_more="These can all be metrics and stuff",
        but="We need to make sure that we catch the logging exceptions and print the whole lot",
    )
    # You can even nest data, as this is stored as a struct in Google Cloud Logging
    custom_logger.info(message="This is message overwrite", amount_transfered=10, amount_failed=10,
                       errors=["a", "b", "c"])

Project details


Download files

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

Source Distribution

custom-logger-cloudcity-1.0.4.tar.gz (2.8 kB view hashes)

Uploaded Source

Built Distribution

custom_logger_cloudcity-1.0.4-py3-none-any.whl (3.2 kB view hashes)

Uploaded Python 3

Supported by

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