%global _empty_manifest_terminate_build 0 Name: python-belvaio-request-id Version: 0.1.2 Release: 1 Summary: An aiohttp utils to track request journey between services. License: Apache Software License 2.0 URL: https://github.com/belvo-finance/belvaio-request-id Source0: https://mirrors.nju.edu.cn/pypi/web/packages/d0/c4/db17c0113b177cd2b07ce49d6aece61b7e724b5b1755c1bdb49742e3e783/belvaio-request-id-0.1.2.tar.gz BuildArch: noarch Requires: python3-aiohttp Requires: python3-sentry-sdk %description (Press CTRL+C to quit) 2020-03-20 11:43:20,248 INFO __main__ 93234aa6d4524f4bb76622e5d0c85589 | Received new GET /Mateu call 2020-03-20 11:43:20,249 INFO aiohttp.access 93234aa6d4524f4bb76622e5d0c85589 | 127.0.0.1 "GET /Mateu HTTP/1.1" 200 266 "curl/7.64.1" """ import logging.config from aiohttp import web from belvaio_request_id.logger import RequestIdAccessLogger from belvaio_request_id.middleware import request_id_middleware from belvaio_request_id.utils import get_request_id LOG_SETTINGS = { "version": 1, "disable_existing_loggers": False, "handlers": { "console": { "class": "logging.StreamHandler", "level": "INFO", "formatter": "default", "filters": ["requestid"], }, }, "filters": {"requestid": {"()": "belvaio_request_id.logger.RequestIdFilter",},}, "formatters": { "default": { "format": "%(asctime)s %(levelname)s %(name)s %(request_id)s | %(message)s", }, }, "loggers": {"": {"level": "DEBUG", "handlers": ["console"], "propagate": True},}, } logging.config.dictConfig(LOG_SETTINGS) logger = logging.getLogger(__name__) async def handle(request): name = request.match_info.get("name") logger.info("Received new GET /%s call", name) text = f"Hello, {name}. Your request id is {get_request_id()}.\n" return web.Response(text=text) if __name__ == "__main__": app = web.Application(middlewares=[request_id_middleware]) app.router.add_route("GET", "/{name}", handle) web.run_app( app, access_log_format='%a "%r" %s %b "%{User-Agent}i"', access_log_class=RequestIdAccessLogger, ) ``` ## Contributing The Belvo team happily welcomes contributions. If you wish to submit a pull request, please be sure check the items on this list: - [ ] Tests related to the changed code were executed - [ ] The source code has been coded following the OWASP security best practices (https://owasp.org/www-pdf-archive/OWASP_SCP_Quick_Reference_Guide_v2.pdf). - [ ] Commit message properly labeled - [ ] There is a ticket associated to each PR. [Guidelines][guidelines] will help you get ready to contribute to this project! [aiohttp]: https://docs.aiohttp.org/en/stable/index.html [guidelines]: https://github.com/belvo-finance/belvaio-request-id/blob/master/CONTRIBUTING.md [access-logs]: https://docs.aiohttp.org/en/stable/logging.html#access-logs [sentry-aiohttp]: https://docs.sentry.io/platforms/python/aiohttp/ [motivation]: https://github.com/Skyscanner/aiotask-context %package -n python3-belvaio-request-id Summary: An aiohttp utils to track request journey between services. Provides: python-belvaio-request-id BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-belvaio-request-id (Press CTRL+C to quit) 2020-03-20 11:43:20,248 INFO __main__ 93234aa6d4524f4bb76622e5d0c85589 | Received new GET /Mateu call 2020-03-20 11:43:20,249 INFO aiohttp.access 93234aa6d4524f4bb76622e5d0c85589 | 127.0.0.1 "GET /Mateu HTTP/1.1" 200 266 "curl/7.64.1" """ import logging.config from aiohttp import web from belvaio_request_id.logger import RequestIdAccessLogger from belvaio_request_id.middleware import request_id_middleware from belvaio_request_id.utils import get_request_id LOG_SETTINGS = { "version": 1, "disable_existing_loggers": False, "handlers": { "console": { "class": "logging.StreamHandler", "level": "INFO", "formatter": "default", "filters": ["requestid"], }, }, "filters": {"requestid": {"()": "belvaio_request_id.logger.RequestIdFilter",},}, "formatters": { "default": { "format": "%(asctime)s %(levelname)s %(name)s %(request_id)s | %(message)s", }, }, "loggers": {"": {"level": "DEBUG", "handlers": ["console"], "propagate": True},}, } logging.config.dictConfig(LOG_SETTINGS) logger = logging.getLogger(__name__) async def handle(request): name = request.match_info.get("name") logger.info("Received new GET /%s call", name) text = f"Hello, {name}. Your request id is {get_request_id()}.\n" return web.Response(text=text) if __name__ == "__main__": app = web.Application(middlewares=[request_id_middleware]) app.router.add_route("GET", "/{name}", handle) web.run_app( app, access_log_format='%a "%r" %s %b "%{User-Agent}i"', access_log_class=RequestIdAccessLogger, ) ``` ## Contributing The Belvo team happily welcomes contributions. If you wish to submit a pull request, please be sure check the items on this list: - [ ] Tests related to the changed code were executed - [ ] The source code has been coded following the OWASP security best practices (https://owasp.org/www-pdf-archive/OWASP_SCP_Quick_Reference_Guide_v2.pdf). - [ ] Commit message properly labeled - [ ] There is a ticket associated to each PR. [Guidelines][guidelines] will help you get ready to contribute to this project! [aiohttp]: https://docs.aiohttp.org/en/stable/index.html [guidelines]: https://github.com/belvo-finance/belvaio-request-id/blob/master/CONTRIBUTING.md [access-logs]: https://docs.aiohttp.org/en/stable/logging.html#access-logs [sentry-aiohttp]: https://docs.sentry.io/platforms/python/aiohttp/ [motivation]: https://github.com/Skyscanner/aiotask-context %package help Summary: Development documents and examples for belvaio-request-id Provides: python3-belvaio-request-id-doc %description help (Press CTRL+C to quit) 2020-03-20 11:43:20,248 INFO __main__ 93234aa6d4524f4bb76622e5d0c85589 | Received new GET /Mateu call 2020-03-20 11:43:20,249 INFO aiohttp.access 93234aa6d4524f4bb76622e5d0c85589 | 127.0.0.1 "GET /Mateu HTTP/1.1" 200 266 "curl/7.64.1" """ import logging.config from aiohttp import web from belvaio_request_id.logger import RequestIdAccessLogger from belvaio_request_id.middleware import request_id_middleware from belvaio_request_id.utils import get_request_id LOG_SETTINGS = { "version": 1, "disable_existing_loggers": False, "handlers": { "console": { "class": "logging.StreamHandler", "level": "INFO", "formatter": "default", "filters": ["requestid"], }, }, "filters": {"requestid": {"()": "belvaio_request_id.logger.RequestIdFilter",},}, "formatters": { "default": { "format": "%(asctime)s %(levelname)s %(name)s %(request_id)s | %(message)s", }, }, "loggers": {"": {"level": "DEBUG", "handlers": ["console"], "propagate": True},}, } logging.config.dictConfig(LOG_SETTINGS) logger = logging.getLogger(__name__) async def handle(request): name = request.match_info.get("name") logger.info("Received new GET /%s call", name) text = f"Hello, {name}. Your request id is {get_request_id()}.\n" return web.Response(text=text) if __name__ == "__main__": app = web.Application(middlewares=[request_id_middleware]) app.router.add_route("GET", "/{name}", handle) web.run_app( app, access_log_format='%a "%r" %s %b "%{User-Agent}i"', access_log_class=RequestIdAccessLogger, ) ``` ## Contributing The Belvo team happily welcomes contributions. If you wish to submit a pull request, please be sure check the items on this list: - [ ] Tests related to the changed code were executed - [ ] The source code has been coded following the OWASP security best practices (https://owasp.org/www-pdf-archive/OWASP_SCP_Quick_Reference_Guide_v2.pdf). - [ ] Commit message properly labeled - [ ] There is a ticket associated to each PR. [Guidelines][guidelines] will help you get ready to contribute to this project! [aiohttp]: https://docs.aiohttp.org/en/stable/index.html [guidelines]: https://github.com/belvo-finance/belvaio-request-id/blob/master/CONTRIBUTING.md [access-logs]: https://docs.aiohttp.org/en/stable/logging.html#access-logs [sentry-aiohttp]: https://docs.sentry.io/platforms/python/aiohttp/ [motivation]: https://github.com/Skyscanner/aiotask-context %prep %autosetup -n belvaio-request-id-0.1.2 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-belvaio-request-id -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Mon May 29 2023 Python_Bot - 0.1.2-1 - Package Spec generated