diff --git a/.gitignore b/.gitignore index b255ecb..d4daf62 100644 --- a/.gitignore +++ b/.gitignore @@ -22,6 +22,7 @@ wheels/ *.egg-info/ .installed.cfg *.egg +*.swp # PyInstaller # Usually these files are written by a python script from a template @@ -104,4 +105,4 @@ certs/ .DS_Store tmp/ # redis -dump.rdb \ No newline at end of file +dump.rdb diff --git a/bin/bbox.py b/bin/bbox.py index c6152a4..860960f 100755 --- a/bin/bbox.py +++ b/bin/bbox.py @@ -1,6 +1,7 @@ #!/usr/bin/env python3 from typing import Optional, List import sys +import os import logging import signal import signal @@ -9,6 +10,8 @@ from aiobbox.log import config_log from aiobbox.handler import BaseHandler from aiobbox.utils import import_module +import sentry_sdk +from sentry_sdk.integrations.aiohttp import AioHttpIntegration sys.path.append('.') @@ -56,6 +59,13 @@ def run(top_parser:ArgumentParser, input_args:Optional[List[str]]=None) -> None: args = top_parser.parse_args(input_args) loop = asyncio.get_event_loop() + sentry_url = os.environ.get('SENTRY_URL') + if sentry_url: + sentry_sdk.init( + dsn=sentry_url, + integrations=[AioHttpIntegration()] + ) + handler = getattr(args, 'handler', None) if handler is None: top_parser.print_help() diff --git a/setup.py b/setup.py index 0ea0cb7..f2438da 100644 --- a/setup.py +++ b/setup.py @@ -2,7 +2,7 @@ from setuptools import find_packages setup(name='aiobbox', - version='0.5.5', + version='0.5.6', description='multi-lang, highly available rpc framework', author='Zeng Ke', author_email='zk@bixin.com', @@ -27,6 +27,8 @@ 'netifaces', 'aioredis', 'etcd3-py', + 'aiocontextvars', + 'sentry-sdk', ], python_requires='>=3.6', )