Welcome to ETF

WLCG Experiments Test Framework (ETF) is a measurement middleware for functional/availability testing of the resources. It’s primary purpose is testing the services to determine availability delivered by resource providers, but it has been successfully used in many deployment and software campaigns, security testing, evaluation of new technologies as well as a generic collector (crawler). It has the following features:

  • generic framework based on Nagios-core and integrated with OMD and check_mk
  • pluggable interface for tests based on monitoring plugins standard
  • wide range of available plugins
  • easy to deploy and configure, pluggable interface for topologies and support for quick turn around in plugin-to-test cycle
  • site notifications/alerts, on-demand test re-scheduling and various interfaces to help with debugging

The code is open-source and available from gitlab

Latest ETF release has the following new features:

  • New job submission library and nagios plugin with the following features (python-jess):
    • rewritten from scratch to replace the previous library that was written back in 2008
    • based on a new job submission library, which is no longer tied to nagios, can be used outside of ETF/nagios context
    • support for direct submissions via shell commands to CREAM (glite-ce-job-submit), ARC (arcsub) and HTCondor-CE (via condor_submit)
    • support for job submissions via local or remote HTCondor pool to a number of different CEs (CREAM, ARC, Globus, HTCondor-CE, etc.)
    • possibility to easily add new job backends (for example using native API instead of shell commands)
    • flexibility to add new job pooling/tracking strategies (right now one job is submitted and followed up per CE)
    • extended debug reporting for failed job submissions
    • support for alternate schedules of the worker node tests
    • unlimited output for WN and job submission metrics
  • New worker node framework to execute tests on the worker nodes (ETF worker node micro-framework)
    • replaces the existing statically compiled nagios binary; re-written in python
    • runs nagios/monitoring plugins or other general purpose scripts (in parallel - with configurable parallelisation and timeouts)
    • has configurable set of backends to support publishing of the results (can in principle run standalone, outside of ETF)
    • fully configurable directly from the ETF experiment plugins via environment (i.e. which script to run on the WN, how they map to metrics in check_mk, etc. no need for additional config files like commands.cfg, services.cfg, etc)
    • compatible with python 2.6+, 2.7, 3+; statically compiled version is also available

This documentation is a work in progress and is organized as follows:

User Documentation

Indices and tables