Introduced changes: - pre-commit config and rules - Add pre-commit to pep8 gate, Flake8 is covered in the pre-commit hooks. - Applying fixes for pre-commit compliance in all code. Also commit hash will be used instead of version tags in pre-commit to prevend arbitrary code from running in developer's machines. pre-commit will be used to: - trailing whitespace; - Replaces or checks mixed line ending (mixed-line-ending); - Forbid files which have a UTF-8 byte-order marker (check-byte-order-marker); - Checks that non-binary executables have a proper shebang (check-executables-have-shebangs); - Check for files that contain merge conflict strings (check-merge-conflict); - Check for debugger imports and py37+ breakpoint() calls in python source (debug-statements); - Attempts to load all yaml files to verify syntax (check-yaml); - Run flake8 checks (flake8) (local) For further details about tests please refer to: https://github.com/pre-commit/pre-commit-hooks Change-Id: I5190044fed75d4c68e9d2686d9ab67b2afa0f9e0 Signed-off-by: Moisés Guimarães de Medeiros <moguimar@redhat.com>
Team and repository tags
oslo.reports
When things go wrong in (production) deployments of OpenStack collecting debug data is a key first step in the process of triaging & ultimately resolving the problem. Projects like Nova has extensively used logging capabilities which produce a vast amount of data. This does not, however, enable an admin to obtain an accurate view on the current live state of the system. For example, what threads are running, what config parameters are in effect, and more.
The project oslo.reports hosts a general purpose error report generation framework, known as the "guru meditation report" (cf http://en.wikipedia.org/wiki/Guru_Meditation) to address the issues described above.
Models: These classes define structured data for a variety of interesting pieces of state. For example, stack traces, threads, config parameters, package version info, etc. They are capable of being serialized to XML / JSON or a plain text representation
Generators: These classes are used to populate the model classes with the current runtime state of the system
Views: views serialize models into say JSON, text or xml. There is also a predefined view that utilizes Jinja templating system.
There will be a number of standard models / generators available for all OpenStack services
StackTraceModel: a base class for any model which includes a stack trace ThreadModel: a class for information about a thread ExceptionModel: a class for information about a caught exception ConfigModel: a class for information about configuration file settings PackageModel: a class for information about vendor/product/version/package information
Each OpenStack project will have the ability to register further generator classes to provide custom project specific data.
- Free software: Apache license
- Documentation: https://docs.openstack.org/oslo.reports/latest
- Source: https://opendev.org/openstack/oslo.reports
- Bugs: https://bugs.launchpad.net/oslo.reports
- Release notes: https://docs.openstack.org/releasenotes/oslo.reports/