240 likes | 250 Views
This presentation provides insight into NMAPI, a lightweight application facilitating various data-processing scripts to connect with a common web-based UI. Administering NMAPI involves configuring scripts, defining execution methods, output formats, and more. Users can query datasets, customize results format, view summary data, and access personalized results. Benefits include reduced disk space usage, standardized interface, extensibility, and seamless integration with existing systems. External linkages with ChannelsDB and future application integrations are discussed.
E N D
Noise Monitor ApplicationProgramming Interface (NMAPI)Current status and plans A.Colla, E.Cuoco, G.Hemming 24/01/12
This presentation This presentation looks at the following areas: • What is NMAPI? • Architecture • Administrating NMAPI • What standard users can do with NMAPI • Benefits of the tool • External application linkages • Further developments
What is NMAPI? • NMAPI is a lightweight application, which allows different data-processing scripts to interface to a common web-based UI. • Administrators can determine how their script is accessed without requiring a knowledge of HTML - either language or standards. • Users query datasets via administrator-customised forms, deciding in which format to produce results: currently HTML or text files.
Architecture - 2 • NMAPI currently sits on olserver31. • It sits and waits for requests, passed via HTTPS. • Upon request receipt, the information is passed to the dedicated Noise Monitor Steering Script, which deals with retrieving requested results from data source.
Administering NMAPI - General Administrators configure the scripts for which they are responsible, defining: • relevant file paths; • method of script execution (Python, etc.); • channels associated to script; • summaries and descriptions; • available output formats; • how arguments passed to a script are separated; • arguments to be passed to scripts. Administrators can also activate an internal de-bugging functionality to assist in Steering Script configuration.
Administering NMAPI – The Admin Interface Administrators configure the scripts for which they are responsible, defining:
What can standard users do with NMAPI? NMAPI functionality enables standard users to: • view date and channel-specific NM summary data; • produce bespoke, personalised results, using the admin-customised script launch HTML form; • pass directly from results produced on-the-fly by one NM to results produced on-the-fly by another; • save produced text format results.
What can standard users do with NMAPI? The NM Summary interface, which enables users to view date and channel-specific summaries via a JavaScript calendar:
What can standard users do with NMAPI? The Steering Script launch interface, which is built by the Administrator via the NM Admin interface:
Example NMAPI standard user path - 1* • Using the NoEMi Lines and NoEMiPeakMaps Noise Monitors, for example: • A user examines the NoEMi Lines summary page, which contains a list of all the lines archived in the LinesDB. * Taken from Amaldi poster: Colla, Cuoco, Hemming, ‘Noise Monitor tools & their application to Virgo data’
Example NMAPI standard user path - 2 • An inspection of the results shows a line of particular interest (for example the 18.6Hz which presumably seems to be due to the motor of an air conditioning machine in the Virgo Central building and which enters the data via the seismic path).
Example NMAPI standard user path - 3 • A look at the plot related to the line confirms that the line is worth examining in further detail.
Example NMAPI standard user path - 4 • The user studies the history of the disturbances in the Dark Fringe and the coincident auxiliary channels versus time, using the calendar tool available to the NoEMiPeakMaps summary pages, in order to choose a day of interest. • Via the NM script interface, the user launches the steering script, using the criteria detailed in the second step, providing a detailed peak-map or line plot for a specific channel.
Example NMAPI standard user path - 6 • The user confirms the results by looking at the Coherence tool:
Example NMAPI standard user path - 7 • From here it is possible, using LinesDB, to search for, or insert, related metadata, describing the line and providing qualitative information regarding, for example, where and how the line has been measured.
Benefits of the tool • The majority of graphics – all non-summary plots - are produced on-the-fly by users and are, consequently, not saved to disk. This inevitably vastly reduces the amount of disk space required for storage. • By providing a standardised interface users only have to learn how to use a single, straightforward tool, rather than different interfaces for different Noise Monitors. • NMAPI has been designed to be fully extensible, so that it can grow and take into account new suggestions and developments in a manner that is fully transparent for already existing NM. • NMAPI is a socket into which NM are plugged. However, in itself it is so lightweight and flexible that it can also be plugged-in elsewhere, e.g. the Noise web pages.
External application linkages • Currently, NMAPI links to ChannelsDB, enabling users to view information on the channel being used in results production. • Further linkages are planned with other applications, via the forthcoming Connections Database (CDB): • Hardware Inventory and Integration database (HWII); • Virgo Logbook.
Further developments – LinesDB - 1 • Given the flexibility of NMAPI, LinesDB, which was initially planned as a stand-alone application, is being integrated into the NMAPI framework. • LinesDB draws information from the results produced by NoEMi Lines, dividing the lines found by that application into ‘known’ and ‘unknown’ lines. Users can categorise lines as ‘known’ via the NMAPI interface. • LinesDB enables line-related metadata to be entered by users and stored in order to conserve a history of lines over time; helping to avoid the loss of line-related information and serving as a central point of reference.
Further developments – LinesDB - 2 • Latest ‘unknown’ lines table – updated daily:
Further developments – LinesDB - 3 • Latest ‘known’ lines table – updated by users: