A STOMP client with message definitions via Pydantic
Project description
Pigeon
Pigeon is a combination of a STOMP client, and a message definition system using Pydantic models.
Message Definitions
Messages are defined by writing a Pydantic model for each topic. These messages can be registered at runtime, or placed in a Python package and automatically loaded when Pigeon is imported using an entrypoint.
Logging
When a Pigeon client is instantiated, a logger is created. If desired, logs can also be sent to Grafana Loki by setting environment variables.
Variable | Documentation |
---|---|
LOKI_URL | The URL of the location of the Loki Server |
LOKI_TAGS | A mapping using colons to split tags and values, and commas to separate pairs |
LOKI_USERNAME | The username to use when connecting to the server |
LOKI_PASSWORD | The password to use when connecting to the server |
LOKI_VERSION | The version of the Loki Emitter to use |
Templates
To ease the creation of services using Pigeon, a Cookiecutter template is available. Similarly, a template for a message definition package is available.
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
Built Distribution
Hashes for pigeon_client-2.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4602122011668bf46df11570308c39f2257925a3c0f821376c0cffe04f456f92 |
|
MD5 | b45ac301213fbaaef5e6fe7ce2504133 |
|
BLAKE2b-256 | 49ca3e1acbe20e858b2168026ab7d51cc92e42496b53c139dedb13793acd6989 |