artdaq  4.10.00
artdaq Front Page

About the framework

The artdaq toolkit is a data-acquisition framework designed for high-energy physics experiments. It provides a flexible, reliable backbone for data transfers and has several locations where users can perform custom analysis tasks using the art framework.

The artdaq suite consists of the following packages:

About this package

This package contains the implementations for the applications and data transfer protocol that form the backbone of the artdaq framework. It also contains several useful executables that can be used to test and debug artdaq systems.

SQA testing documentation (test plan, test cases, and release result recording procedure) is maintained in doc/SQA_Testing.rst.

Basic operation (SQA)

For first-time setup and a complete walk-through of downloading, building, and running a working system, use the artdaq-demo instructions. Those instructions remain the recommended "getting started" path for basic artdaq operation.

A typical operational cycle for artdaq is:

  1. Set up the runtime environment so required products are available.
  2. Start the required artdaq processes with a valid FHiCL configuration.
  3. Initialize, start, and stop runs using your run-control tooling (for example, artdaq-daqinterface).
  4. Review MessageFacility/TRACE logs to confirm healthy transitions and data flow.

Common errors and troubleshooting (SQA)

Common operational errors are usually visible in process logs:

  • Missing environment setup / missing libraries
    Symptoms include startup failures, missing executable/library messages, or plugin-load errors.
    Action: verify your product setup and environment variables, then restart processes.
  • Invalid FHiCL configuration
    Symptoms include configuration parsing exceptions or process failure during initialization.
    Action: validate FHiCL syntax/parameter names and retry with corrected configuration.
  • Network or transfer-plugin connectivity issues
    Symptoms include timeout, socket, or connection-refused messages between artdaq processes.
    Action: verify hostnames, ports, firewall rules, and process ordering.
  • Stale shared-memory resources after abnormal termination
    Symptoms include failures when restarting data-receiver or event-builder processes after a crash/forced stop.
    Action: clean up stale shared-memory resources and restart the affected processes.
  • Art process startup/runtime failures
    Symptoms include repeated restart attempts or "art processes have died" messages in logs.
    Action: check PMT/MessageFacility logs for the first error, correct the underlying configuration/runtime issue, and restart.

Software quality assurance (SQA)

artdaq is maintained under the lab software quality assurance program and follows documented procedures for how software is designed, developed, reviewed, tested, and maintained.

For SQA process details, see:

As art SQA documentation is finalized, artdaq should review and adopt those materials where applicable, and keep references current in the wiki and project documentation.