Name | libABCD JSON |
Version |
2.1.0
JSON |
| download |
home_page | None |
Summary | the Autonomous Bariloche Central DAQ, a centralized DAQ system for scientific experiments |
upload_time | 2024-05-31 13:26:12 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.8 |
license | None |
keywords |
logging
mqtt
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
Autonomous Bariloche Central DAQ (libABCD) v2.1
===============================================
This library handles two crucial aspects of any experiment that consists
of multiple clients taking data: the communication between clients and
the log information.
The main concept for the DAQ is that it orbits around a central server.
Control and information run through this server allowing a permanent
follow-up of what is happening. The raw data is handled by the clients
themselves and is not seen by the DAQ. The central server is a MQTT
broker. We recommend using [`mosquitto`](https://mosquitto.org/).
Logs are handled by each client, but the `ABCDHandler` logging handler
sends the relevant information through MQTT, allowing for a centralized
monitoring.
Installation
------------
The latest version can be installed from pip:
```bash
python3 -m pip install libabcd
```
Usage
-----
`libABCD` is a singleton object (i.e. a single instance runs per python
process). Start it by running:
```python
import libABCD
libABCD.init() # see documentation in the docstring
```
You can then `publish`, `subscribe`, `unsubscribe` and `add_callback`
using the same object. Documentation can be found in the docstrings.
Best practice for handling your application log:
```python
import logging
logger = logging.getLogger('your_app_name')
logger.addHandler(logging.NullHandler()) # remove all other handlers
logger.info('I am an INFO message') # or warning, error, critical
```
Don't forget to close the connection at the end of the session
```python
libABCD.disconnect()
```
A full documentation of the available features is under way.
Questions, requests, feedback
-----------------------------
If you find a bug, want to know more about specific features or have feedback
of any kind, do not hesitate to email me at nicolaseavalos AT gmail DOT com.
License
-------
This project is licensed under the MIT license.
Raw data
{
"_id": null,
"home_page": null,
"name": "libABCD",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "logging, mqtt",
"author": null,
"author_email": "Xavier Bertou <bertou@cab.cnea.gov.ar>, Nicol\u00e1s Avalos <nicolas.avalos@ib.edu.ar>",
"download_url": "https://files.pythonhosted.org/packages/c4/38/0a435f34114bf585a626821064f016371d0ded2dee93eb0b2cdf18339eea/libabcd-2.1.0.tar.gz",
"platform": null,
"description": "Autonomous Bariloche Central DAQ (libABCD) v2.1\n===============================================\n\nThis library handles two crucial aspects of any experiment that consists \nof multiple clients taking data: the communication between clients and \nthe log information.\n\nThe main concept for the DAQ is that it orbits around a central server. \nControl and information run through this server allowing a permanent \nfollow-up of what is happening. The raw data is handled by the clients \nthemselves and is not seen by the DAQ. The central server is a MQTT \nbroker. We recommend using [`mosquitto`](https://mosquitto.org/).\n\nLogs are handled by each client, but the `ABCDHandler` logging handler \nsends the relevant information through MQTT, allowing for a centralized \nmonitoring.\n\nInstallation\n------------\n\nThe latest version can be installed from pip:\n```bash\npython3 -m pip install libabcd\n```\n\nUsage\n-----\n\n`libABCD` is a singleton object (i.e. a single instance runs per python\nprocess). Start it by running:\n```python\nimport libABCD\nlibABCD.init() # see documentation in the docstring\n```\nYou can then `publish`, `subscribe`, `unsubscribe` and `add_callback` \nusing the same object. Documentation can be found in the docstrings. \n\nBest practice for handling your application log:\n```python\nimport logging\nlogger = logging.getLogger('your_app_name')\nlogger.addHandler(logging.NullHandler()) # remove all other handlers\nlogger.info('I am an INFO message') # or warning, error, critical\n```\n\nDon't forget to close the connection at the end of the session\n```python\nlibABCD.disconnect()\n```\n\nA full documentation of the available features is under way.\n\nQuestions, requests, feedback\n-----------------------------\n\nIf you find a bug, want to know more about specific features or have feedback\nof any kind, do not hesitate to email me at nicolaseavalos AT gmail DOT com.\n\nLicense\n-------\n\nThis project is licensed under the MIT license.\n\n",
"bugtrack_url": null,
"license": null,
"summary": "the Autonomous Bariloche Central DAQ, a centralized DAQ system for scientific experiments",
"version": "2.1.0",
"project_urls": {
"Source code": "https://gitlab.com/bertou/libabcd"
},
"split_keywords": [
"logging",
" mqtt"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3f63b1f8b922a6d61b109168243b41f9a650347c235f9db202029f8b9242b144",
"md5": "869b7a88ed65d0762aa27a31603d8e37",
"sha256": "a56cdc88a9058358ca722a3ce3ca89df7a53c251b1b08f5a74ef6ff65d58724c"
},
"downloads": -1,
"filename": "libabcd-2.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "869b7a88ed65d0762aa27a31603d8e37",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 6667,
"upload_time": "2024-05-31T13:26:10",
"upload_time_iso_8601": "2024-05-31T13:26:10.582694Z",
"url": "https://files.pythonhosted.org/packages/3f/63/b1f8b922a6d61b109168243b41f9a650347c235f9db202029f8b9242b144/libabcd-2.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c4380a435f34114bf585a626821064f016371d0ded2dee93eb0b2cdf18339eea",
"md5": "abc7483bd42af72d62468e8cb98ba69f",
"sha256": "e693b45f58198626b4b1fbc423f48d77b7695066840cf1466aceb195f643723b"
},
"downloads": -1,
"filename": "libabcd-2.1.0.tar.gz",
"has_sig": false,
"md5_digest": "abc7483bd42af72d62468e8cb98ba69f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 7736,
"upload_time": "2024-05-31T13:26:12",
"upload_time_iso_8601": "2024-05-31T13:26:12.170958Z",
"url": "https://files.pythonhosted.org/packages/c4/38/0a435f34114bf585a626821064f016371d0ded2dee93eb0b2cdf18339eea/libabcd-2.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-05-31 13:26:12",
"github": false,
"gitlab": true,
"bitbucket": false,
"codeberg": false,
"gitlab_user": "bertou",
"gitlab_project": "libabcd",
"lcname": "libabcd"
}