Skip to content

mdavidsaver/masarService

 
 

Repository files navigation

MASAR

MASAR (MAchine Snapshot, Archiving, and Retrieve)

Dependencies

Required dependencies

Needed by Qt client UI

# apt-get install epics-dev epics-pvd-dev epics-pva-dev \
  python-dev python-qt4 python-cothread

Building

Copy RELEASE.local.example as RELEASE.local and fill in the paths for all EPICS module dependencies. If using Debian packages then copy RELEASE.local.deb instead.

Only EPICS Base is needed to build.

$ make

Running the daemon

Setting Python path. The 'p4p' module must appear in the search path. If '$P4P_DIR' is the source directory then:

export PYTHONPATH=$PWD/python2.7/linux-x86_64:$P4P_DIR/python2.7/linux-x86_64

Run automatic tests

$ nosetests minimasar

Run daemon in simulated client mode with in-memory database.

$ python -m minimasar.server --name masarService -L DEBUG ':memory:' -G sim

Run daemon in CA client mode and store in masar.db. The database file will be created if it does not exist.

$ python -m minimasar.server --name masarService -L DEBUG masar.db -G ca

Some testing can be done with the pvcall utility provided by the pvAccessCPP module.

## Load pre-defined configuration
## On success, a new configid is printed
$ pvcall masarService:storeTestConfig configname=test desc=testing
<undefined>                
config_idx config_name config_desc    config_create_date config_version status system
         1        test     testing "2021-07-03 16:47:19"              0 active       
## Read-back configuration
$ pvcall masarService:loadServiceConfig configid=<configid>

$ pvcall masarService:retrieveServiceConfigs

$ pvcall masarService:saveSnapshot configname=test
$ pvcall masarService:updateSnapshotEvent eventid=<eventid> user=me desc=snap

$ pvcall masarService:retrieveServiceEvents configid=<configid>

$ pvcall masarService:retrieveSnapshot eventid=eventid>

$ pvcall masarService:dumpDB

See interface.md for a description of supported RPC calls.

Running the Qt client

./masar

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 98.8%
  • Other 1.2%