Skip to content

Reporting

The ITk Production Database (PDB) holds all the ITk production information. Data can be extracted via scripts using the itkdb python package or directly via API requests (see API documentation).

ITk reporting tools exist to help retrieve sub-sets of PDB information for specific tasks using pre-defined or tunable scripts. Here, several tools are documented. If there is no reporting tool to fit your reporting task then please contact: Kenny

Tools have three types:

General Comments

Reports are written in Python and make use of:

  • itkdb package to query PDB
  • pandas package for dataframes to wrangle data
  • altair package for visualisations

addtionally for dashboard creation:

  • Datapane package to compile and distribute reports
Install packages

To install a python package locally:

python -m pip install PACKAGE_NAME


On Demand Reports

On demand reports request and compile data from PDB at the user's request.

Scripts are pre-prepared in notebook and webApp format. These can be run as they are or used as template for further development.

Reporting Scripts

The ITk-reports repository contains several example notebooks for reporting:

  • Component Type Dashboards: what, where, stage, meta-data
  • Test Type Dashboards: where, when, data
  • Institution Inventory Dashboards: what, stage, meta-data

Documentation and tutorial examples is available here

Reporting WebApps

A dedicated reporting webApp contians a couple of themes for general reporting here

Two themes:

Population App:

Retrieved information:

  • PDB Stats: overall stats for database
  • Project Pops: populations per componentType/testType
  • Inventories: populations per Institution
  • Plot Param: plot component/test parameter
  • Plot Shipments: visualise component travels

Repository: gitLab

Reporting App

“an overview of components at institute and country level with options to select a smaller number of countries or a single institute”

Retrieved information:

  • Summary Tables
  • Summary Plots
  • Detailed Tables
  • Detailed Plots

Originally intended for Pixels monitoring components at clusters/instutions on-demand.

Repository: gitLab

WebApp Interface

WebApp to run ITk-reports style dashboards on demand.

Intended to ease interface with the general reporting codebase for common report types, e.g. testType dashboard to check upload test data, componentType dashboard to check component sub-type, stages, etc.


Scheduled Dashboards

Scheduled are made using scripts from ITk-reports repository and run from Cern's OKD platform:

  • Component Type Dashboards (CTDB): what, where, stage, meta-data
  • Test Type Dashboards (TTDB): where, when, data
  • Institution Inventory Dashboards (IIDB): what, stage, meta-data

A repository of scheduled reports is here

  • CTDB, TTDB and IIDB reports are created for populations of database objects where the population is (10,1500) for each project

Alerts

Alerts are based in Test Type Dashboards which compile test data for each parameter over sets of uploaded tests.

Additional functionality:

  • identify exceptional data points
  • collate exceptional values and associated data
  • email responsible person(s)

identify exceptional data points

Values can be identified as exceptional as follows:

  • Multiples of sigma, i.e. make use of statistical information
  • Range max & min, e.g. from specification documents
  • Exact matching, i.e. alert if equal
  • Non-matching, i.e. alert if not equal

collate exceptional values and associated meta-data

An Alerts tab is added to testType Dashboard report with a table of exceptional values for each parameter (NB components may appear in multiple tables).

The tables include: tested component serialNumber, upload institution of test, stage of test, parameter code & value, reason identified as exceptional

email responsible person(s)

The recipient receives an email with the report summary (number of exeptions per parameter) and a link to full report dashboard.

Set-up an alert

Please contact Kenny with:

  • PDB testType
  • Exception definitions (per parameter)
  • Contact email

---

Unmaintained

Production Population Timelines webApp

WebApp to monitor trends in component production over clusteers/institutions.