Skip to main content

ZeroC Ice logging utils

Project description

logging.conf example

# https://docs.python.org/3.6/library/logging.config.html
#
# Level               Numeric value
# CRITICAL      50
# ERROR         40
# WARNING       30
# INFO          20
# DEBUG         10
# NOTSET        0
# higher level - less logs

[loggers]
keys=root

[handlers]
keys=consoleHandler

[logger_root]
level=DEBUG
handlers=consoleHandler

[handler_consoleHandler]
class=StreamHandler
level=DEBUG
formatter=consoleFormatter
args=(sys.stdout,)

[formatter_consoleFormatter]
class=ice_yml_log_formatter.YAMLLogFormatter
format=[%(levelname)s] %(name)s: %(msg)s
datefmt=

simple usage example

import os
import logging.config
import logging

from ice_yml_log_formatter import get_request_context

logging.getLogger()
logging.config.fileConfig('./logging.conf')

#....
#....
# in your ice servant method
try:
  raise Exception('Any cause')
except:
  logging.exception('Oops!',
                    extra={
                      'ice_current': current,
                      'context': {
                        'any_info_key': 'any info value',
                      },
                    })

Use ice_current for ice request metatada print, and context for extra structured information.

log example

[DEBUG] services.fun - Dispatch
  iceIdentity: ZeroC/Fun
  iceOperation: something
  iceRequestId: 1

[ERROR] services.fun - Unexpected error
  iceIdentity: ZeroC/Fun
  iceOperation: something
  iceRequestId: 1
  context:
    any_info_key: any info value
  Error: Fun::ExampleException
    error_data:
      some_prop: 1
    stack_trace:
        File "path-to-source/fun.py", line 71, in wrapped
          return method(self, *args, **kwargs)

        File "path-to-source/fun.py", line 123, in something
          raise Fun.ExampleException(some_prop=1)

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

ice-yml-log-formatter-0.1.0.tar.gz (4.2 kB view details)

Uploaded Source

File details

Details for the file ice-yml-log-formatter-0.1.0.tar.gz.

File metadata

File hashes

Hashes for ice-yml-log-formatter-0.1.0.tar.gz
Algorithm Hash digest
SHA256 428f9cd8c02a7815744536bfd4705098c6618d968314e5636beb6c8c64345d04
MD5 b30bbb579c23249d0e347bbd969ecaa8
BLAKE2b-256 4e6cffa6c015f3a4a5ca8bb3bd877d7cf551ed3b7e50b96abc46ec33a48cdeb8

See more details on using hashes here.

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