PyArchAppl is a Python client library for the EPICS Archiver Appliance, providing easy data access, management, and automation for control system data.
- Retrieve and plot time-series data from Archiver Appliance
- Management interface for PVs (Process Variables)
- Command-line tools for data access and inspection
- Flexible site configuration
- Support Python 3.9, 3.10, 3.11, 3.12, 3.13
pip install pyarchapplTo upgrade:
pip install --upgrade pyarchapplfrom archappl.client import ArchiverDataClient
import matplotlib.pyplot as plt
client = ArchiverDataClient()
client.url = 'http://127.0.0.1:17665' # Optional, default provided
pv = 'TST:gaussianNoise'
data = client.get_data(pv)
data.plot()
plt.show()from archappl.client import ArchiverMgmtClient
client = ArchiverMgmtClient()
client.url = 'http://127.0.0.1:17665'
all_pvs = client.get_all_pvs(pv="TST*")
print(all_pvs)
# [u'TST:fakeGaussianNoise', u'TST:gaussianNoise', u'TST:uniformNoise']PyArchAppl provides convenient CLI tools:
pyarchappl-get— Retrieve data (use-hfor help)pyarchappl-inspect— Inspect archiver information (use-hfor help)
PyArchAppl uses an INI-style configuration file to define service connection and behavior.
Config file search order:
~/.pyarchappl/config.ini/etc/pyarchappl/config.ini- Package default:
main/config/default.ini
Override with the environment variable: PYARCHAPPL_CONFIG_FILE.
See the default.ini for all options.
- Clone the repo and install dependencies from
requirements.txtandrequirements-dev.txt. - [Optional] Set up a local Archiver Appliance for testing.
This project is licensed under the GPLv3+ License. See the LICENSE file for details.
