This section provides examples of using DAQBroker’s different interfaces. Currently only a description of each interface exists, in the coming months a complement of animated gifs will be added to the descriptions.
When attempting to access any DAQBroker interface, if no session is initiated, a user is prompted to provide both a server and login credentials. If no server registered with the machine running the application, the user is required to provide a server AND an engine as well as user login credentials
When providing a database engine that has not used DAQBroker before it is highly suggested that the user provides credentials with global access to edit the database engine. DAQBroker will require to create new databases with the supplied user and errors will occur if the supplied user does not have write access to the database. DAQBroker does not store passwords locally it simply stores the username in a database local to the database engine supplied.
A user’s session will remain active as long as the browser remains open. Closing all DAQBroker tabs will not close the session, only completely ending the browser process will remove the user session. Users can force a session to close by clicking the Logout button on the right-hand-side menu of the web interface, while a session is active
A DAQBroker session is unlike regular database sessions, as a single user can connect with several databases. When clicking the Logout button, a user will log out of all connected database engines and servers.
This section refers to the interfaces that relate to instrument and node manipulation. Each interface can be accessed on the left-hand-side menu of the DAQBroker web interface.
This interface allows users to create and/or edit virtual instrument representations. Once created and added to the proper nodes, an instrument data source will automatically start collecting and storing data. A virtual instrument can be edited to add more sources, change existing sources and individual channels or outright delete instruments. Gathering from an instrument can be turned on or off, this turns off all automated data gathering from all data sources of an instrument.
This interface allows users to access data from all instruments associated with the currently used database. Users can access raw data files or create data visualizations from already gathered and stored data by drawing collected data or even by manipulating different data channels. Data visualizations currently available are:
- Simple time series : Builds a plotted time series of different gathered data channels.
The different plots in DAQBroker are customizable depending on the type of plot being used.
This interface allows managment of an experimental environment by providing users with a dynamic run list. Users with relevant permissions can start, stop and edit experimental runs. Users can also add comments to existing runs in order to highlight changes in behaviour or experimental parameters during the course of the run.
Users with relevant permissions can also add/delete/alter the existing experimental parameters to account for changes in the experimental environment when, for instance, a new parameter is added to the experiment.
The runs interface presents users with two tables, one showing the current active run and another showing the previous runs. An experimental run which is still underway is called an “active” run.
This interface allows users to access a list of client nodes currently connected to the server running DAQBroker. This allows users to check on the status of their instrument’s machines directly from the browser without having to remotely access them.
Administrator users can also set a node to automatically set its time using an NTP server, this server can be setup in the administrator only tabs (see Local Administrator)
This section refers to the interfaces that relate to global database choosing and administration. Each interface can be found on the right hand side menu of the DAQBroker web interface
This dropdown menu contains a list of available database engines that have been used by the server application machine. If a user is logged into that engine, that engine will be shown with a green background and if not, it will be shown with a red background. This affects the behaviour when you choose an engine as an already logged in engine will send you to the same page using the different engine (prompting for a choice of database first). If you are not logged in to the engine, the user is sent to the login screen to supply the proper credentials for the selected engine.
This dropdown menu is similar to the Servers menu where a list of available databases are provided and on selecting a different database the user is sent to the same interface focusing on a different database.
This interface is the main administrator interface for the database engine being used. This interface allows for 2 major administrator tasks on the database engine:
- Database user management: This interface allows administrators to create users with a varied level of permissions. The created users can also have their permissions edited and they can even be deleted.
- Database managment: This interface allows administrators to creaete new databases. A DAQBroker database is a repository of data and instruments that have relevant relationships between each other. Several DAQBroker databses can exist on the same database engine at the same time. These databases are designed to be scalable and hold large ammounts of data. However, these databases can be set up to exist in large numbers insted of one centralized database. A DAQBroker database can be set to active or inactive. When a database is inactive, no data from instruments associated with that database is collected. New databases can be created as simply empty databases which contain only the basic building blocks of a new experimental setup. Databases can also be created as a skeleton of an existing database, which can be used to replicate an already existing experimental setup by allowing users to include skeletons for specific instruments, visualizations and experimental runs.
This interface allows administrators to change the local configuration settings of the different processes (see Server application) DAQBroker server application. The settings that are changeable are the following:
- Communications port: This is the main network port that the DAQBroker server application uses to send commands to different instrument nodes. The default value for the port is 9090, a change in this port will require a server restart to take effect.
- Backups port: This port is used for file transfers in the case that an instrument requires its files to be backed up on the central server application. Changes to this port would result in a temporary restart of the backup server process, during which time
- Logging port: This port is used to recieve logging requests from the different processes of the DAQBroker server application. Changes to this port will require a system restart to take effect.
- NTP servers: This interface allows administrators to add and choose an NTP server to synchronize the software clock of selected instrument nodes.
Synchronizing the software clock of an instrument machine will not necessarily update the clock of the underlying data acquisition software. Only with a restart of said software is the time to be guaranteed to be updated. This behaviour has been noticed on several different daa acquisition softwares and the suspected reason is that these softwares use an internal clock based on an initial query to the system clock.
- Backups folder: This folder contains the backup files of all instruments, in all databases in all database engines associated with the DAQBroker server. They are ordered in the order of
engineServer/database/instrument/source. A change to this folder will start a process of file migration which triggers a temporary shutdown of the backup server. This migration process can be lengthy and tie up a large amount of resources. Carefully consider changing the backup folder when you have a large amount of stored data.
- Temporary files folder: This folder contains temporary files such as processed data files and other files created at server runtime to store temporary information. The point of this folder is to be temporarily emptied and thus any data stored in this folder will be eventually removed. While not as critical as the backups folder, some care should be considered when chaging this folder.