%global _empty_manifest_terminate_build 0 Name: python-pino Version: 0.6.0 Release: 1 Summary: Python json logger inspired by pino.js License: MIT URL: https://github.com/CoorpAcademy/pino.py Source0: https://mirrors.nju.edu.cn/pypi/web/packages/88/7c/68bc956e96fdc1e76a3bc0b89deb0ab3fcb2ced2af76fd588ed6ac48e4bb/pino-0.6.0.tar.gz BuildArch: noarch Requires: python3-style %description > **Json natural logger for python** inspired by [pino.js](https://github.com/pinojs/pino) :evergreen_tree: [![PyPI](https://img.shields.io/pypi/v/pino.svg)](https://pypi.org/project/pino/) [![Supported Python Versions](https://img.shields.io/pypi/pyversions/pino.svg)](https://pypi.python.org/pypi/pino) [![Build Status](https://travis-ci.com/CoorpAcademy/pino.py.svg?branch=master)](https://travis-ci.com/CoorpAcademy/pino.py) [![codecov](https://codecov.io/gh/CoorpAcademy/pino.py/branch/master/graph/badge.svg)](https://codecov.io/gh/CoorpAcademy/pino.py) > In building port of [pinojs](https://github.com/pinojs/pino) logging library to python :snake: A CHANGELOG will be introduced once it's stable enough and publicized. Use it at you own risk, but feel free to reach with an issue. ## Basic Example ```python from pino import pino logger = pino( bindings={"apptype": "prototype", "context": "main"} ) logger.info("Hello, I just started") logger.debug({"details": 42}, "Some details that won't be seen") child_logger = logger.child(context="some_job") child_logger.info("Job started") child_logger.info({"duration": 4012}, "Job completed %s", "NOW") logger.info("Program completed") ``` Which would output: ``` {"level": "info", "time": 1587740056952, "message": "Hello, I just started", "host": "SomeHost", "apptype": "prototype", "context": "main", "millidiff": 0} {"level": "info", "time": 1587740056952, "message": "Job started", "host": "SomeHost", "context": "some_job", "apptype": "prototype", "millidiff": 0} {"level": "info", "time": 1587740056952, "message": "Job completed NOW", "host": "SomeHost", "duration": 4012, "context": "some_job", "apptype": "prototype", "millidiff": 0} {"level": "info", "time": 1587740056952, "message": "Program completed", "host": "SomeHost", "apptype": "prototype", "context": "main", "millidiff": 0} ``` ## API ### pino() constructor arguments - `bindings`: meta attached to the messages by default - `level`: minimal level to output logs, _default to `info`_ - `enabled`: is logger enabled, _default to true_ - `millidiff`: whether a millidiff is added to message, `ms` since last message, _enabled by default_. - `stream` : stream to write logs to, default to `sys.stdout` - `dump_function`: function to be used to serialise object to JSON, _default `json.dumps`_ - `messagekey`: key for message entry, _default `message`_ ### pino logger instance - log methods: `critical`, `error`, `warn`, `info`, `debug`: (extra_bindings?), message, template value - `.level`: access or update current log level - `child(metas)`: create a child logger instance with new metas/bindings attached to it. (metas can be provided either as dict or kwargs) ### Complex examples You can see more detailed examples in the [**examples** folder](./examples), notably [complex.py](./examples/complex.py) ## Development :hammer_and_wrench: This library use [***Poetry***](https://python-poetry.org/) for management of the project, it's dependencies, build and else. You can run test on all supported python version with `poetry run task test` (which will run `tox`), or you can run on your current python version with `poetry run task pytest`. %package -n python3-pino Summary: Python json logger inspired by pino.js Provides: python-pino BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-pino > **Json natural logger for python** inspired by [pino.js](https://github.com/pinojs/pino) :evergreen_tree: [![PyPI](https://img.shields.io/pypi/v/pino.svg)](https://pypi.org/project/pino/) [![Supported Python Versions](https://img.shields.io/pypi/pyversions/pino.svg)](https://pypi.python.org/pypi/pino) [![Build Status](https://travis-ci.com/CoorpAcademy/pino.py.svg?branch=master)](https://travis-ci.com/CoorpAcademy/pino.py) [![codecov](https://codecov.io/gh/CoorpAcademy/pino.py/branch/master/graph/badge.svg)](https://codecov.io/gh/CoorpAcademy/pino.py) > In building port of [pinojs](https://github.com/pinojs/pino) logging library to python :snake: A CHANGELOG will be introduced once it's stable enough and publicized. Use it at you own risk, but feel free to reach with an issue. ## Basic Example ```python from pino import pino logger = pino( bindings={"apptype": "prototype", "context": "main"} ) logger.info("Hello, I just started") logger.debug({"details": 42}, "Some details that won't be seen") child_logger = logger.child(context="some_job") child_logger.info("Job started") child_logger.info({"duration": 4012}, "Job completed %s", "NOW") logger.info("Program completed") ``` Which would output: ``` {"level": "info", "time": 1587740056952, "message": "Hello, I just started", "host": "SomeHost", "apptype": "prototype", "context": "main", "millidiff": 0} {"level": "info", "time": 1587740056952, "message": "Job started", "host": "SomeHost", "context": "some_job", "apptype": "prototype", "millidiff": 0} {"level": "info", "time": 1587740056952, "message": "Job completed NOW", "host": "SomeHost", "duration": 4012, "context": "some_job", "apptype": "prototype", "millidiff": 0} {"level": "info", "time": 1587740056952, "message": "Program completed", "host": "SomeHost", "apptype": "prototype", "context": "main", "millidiff": 0} ``` ## API ### pino() constructor arguments - `bindings`: meta attached to the messages by default - `level`: minimal level to output logs, _default to `info`_ - `enabled`: is logger enabled, _default to true_ - `millidiff`: whether a millidiff is added to message, `ms` since last message, _enabled by default_. - `stream` : stream to write logs to, default to `sys.stdout` - `dump_function`: function to be used to serialise object to JSON, _default `json.dumps`_ - `messagekey`: key for message entry, _default `message`_ ### pino logger instance - log methods: `critical`, `error`, `warn`, `info`, `debug`: (extra_bindings?), message, template value - `.level`: access or update current log level - `child(metas)`: create a child logger instance with new metas/bindings attached to it. (metas can be provided either as dict or kwargs) ### Complex examples You can see more detailed examples in the [**examples** folder](./examples), notably [complex.py](./examples/complex.py) ## Development :hammer_and_wrench: This library use [***Poetry***](https://python-poetry.org/) for management of the project, it's dependencies, build and else. You can run test on all supported python version with `poetry run task test` (which will run `tox`), or you can run on your current python version with `poetry run task pytest`. %package help Summary: Development documents and examples for pino Provides: python3-pino-doc %description help > **Json natural logger for python** inspired by [pino.js](https://github.com/pinojs/pino) :evergreen_tree: [![PyPI](https://img.shields.io/pypi/v/pino.svg)](https://pypi.org/project/pino/) [![Supported Python Versions](https://img.shields.io/pypi/pyversions/pino.svg)](https://pypi.python.org/pypi/pino) [![Build Status](https://travis-ci.com/CoorpAcademy/pino.py.svg?branch=master)](https://travis-ci.com/CoorpAcademy/pino.py) [![codecov](https://codecov.io/gh/CoorpAcademy/pino.py/branch/master/graph/badge.svg)](https://codecov.io/gh/CoorpAcademy/pino.py) > In building port of [pinojs](https://github.com/pinojs/pino) logging library to python :snake: A CHANGELOG will be introduced once it's stable enough and publicized. Use it at you own risk, but feel free to reach with an issue. ## Basic Example ```python from pino import pino logger = pino( bindings={"apptype": "prototype", "context": "main"} ) logger.info("Hello, I just started") logger.debug({"details": 42}, "Some details that won't be seen") child_logger = logger.child(context="some_job") child_logger.info("Job started") child_logger.info({"duration": 4012}, "Job completed %s", "NOW") logger.info("Program completed") ``` Which would output: ``` {"level": "info", "time": 1587740056952, "message": "Hello, I just started", "host": "SomeHost", "apptype": "prototype", "context": "main", "millidiff": 0} {"level": "info", "time": 1587740056952, "message": "Job started", "host": "SomeHost", "context": "some_job", "apptype": "prototype", "millidiff": 0} {"level": "info", "time": 1587740056952, "message": "Job completed NOW", "host": "SomeHost", "duration": 4012, "context": "some_job", "apptype": "prototype", "millidiff": 0} {"level": "info", "time": 1587740056952, "message": "Program completed", "host": "SomeHost", "apptype": "prototype", "context": "main", "millidiff": 0} ``` ## API ### pino() constructor arguments - `bindings`: meta attached to the messages by default - `level`: minimal level to output logs, _default to `info`_ - `enabled`: is logger enabled, _default to true_ - `millidiff`: whether a millidiff is added to message, `ms` since last message, _enabled by default_. - `stream` : stream to write logs to, default to `sys.stdout` - `dump_function`: function to be used to serialise object to JSON, _default `json.dumps`_ - `messagekey`: key for message entry, _default `message`_ ### pino logger instance - log methods: `critical`, `error`, `warn`, `info`, `debug`: (extra_bindings?), message, template value - `.level`: access or update current log level - `child(metas)`: create a child logger instance with new metas/bindings attached to it. (metas can be provided either as dict or kwargs) ### Complex examples You can see more detailed examples in the [**examples** folder](./examples), notably [complex.py](./examples/complex.py) ## Development :hammer_and_wrench: This library use [***Poetry***](https://python-poetry.org/) for management of the project, it's dependencies, build and else. You can run test on all supported python version with `poetry run task test` (which will run `tox`), or you can run on your current python version with `poetry run task pytest`. %prep %autosetup -n pino-0.6.0 %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-pino -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Wed May 31 2023 Python_Bot - 0.6.0-1 - Package Spec generated