PdmV Valdb and Refactoring of the CMS Database monitoring backend services AlCaDB/PdmV meeting Thursday, 26 April 2012 Student: Aidas Tilmantas Supervisor: Andreas Pfeiffer
OUtline PdmV Valdb Nagios Easymon GetLumi PopCon Global Tag List Payload Inspector
PDMV VALIDATIon db MOtivation The CMS software releases need continuous and detailed validation of their Physics Performance Up to now, the validation bookkeeping was done with twiki pages, on validation tables. This works fine, but the load for the maintenance of the pages is quite high and the synchronization between mails sent to official validation lists and the twiki itself is tedious to be kept This is the reason why we developed the Val DB
PDMV VALIDATION DB Application developing Task was divided in three parts Web GUI (html, javascript) developed by Antanas Norkus Database layer (Oracle, python, SqlAlchemy) developed by Martynas Mitrulevičius Middle Layer which connects database with web gui (Python, cherrypy, javascript, ajax, REST, jinja2) developed by Aidas Tilmantas
PdmV VALIDATION DB Developing (middle layer) Get and post data between database and web gui Sending mails Generating history page Configure system Security checks
PDMV VALIDATION DB result
PDMV VALIDATION DB result
PDMV VALIDATION DB result
Nagios Rewritten plugins, so they are in one place Plugins can be executed as stand alone application through command line Removed copy-paste code Installation script Configuration script
REFACTORING OF THE CMS DATABASE MONITORING BACKEND SERVICES Motivation Merge frontend/backend components Faster working Improve security Redesigned services EASYMON GETLUMI POPCON GLOBAL TAG LIST PAYLOAD INSPECTOR
EasyMon/GETLUMI Removed PHP code Merged backend and frontend layers Improved security (data validation) Same old interface Installation script for the EASYMON http://cms-conddb-dev.cern.ch/easymon http://cms-conddb-dev.cern.ch/getlumi
EASYMON
EASYMON
Popcon Merged backend and frontend layers Improved security (data validation) In PopCon Cron Job Tail Fetcher added errors and warnings coloring Made PopCon Cron Job Tail Fetcher page loading faster Removed PHP code Cleared code http://cms-conddb-dev.cern.ch/popcon
Popcon
Popcon
POPCON
Global Tag list Removed PHP code Improved security (data validation) Cleared code Merged backend and frontend layers Added frontend features to backend Much more complex http://cms-conddb-dev.cern.ch/gtlist
Global Tag LIST
Global tag list
Payload inspector Removed PHP code Merged backend and frontend layers Cleared existing usable code Improved security (data validation) Fixed some old errors Complexity as Global Tag List http://cms-conddb-dev.cern.ch/payload_inspector
Payload inspector
Payload inspector
summary PdmV Validation DB Nagios Easymon GetLumi PopCon Global Tag List Payload Inspector
Final word Special thanks to: Andreas Pfeiffer Salvatore Di Guida Kostas Tamošiūnas