HappyFace3 everything now in Python ;-)

Similar documents
How To Use Happyface (Hf) On A Network (For Free)

Das HappyFace Meta-Monitoring Framework

HappyFace for CMS Tier-1 local job monitoring

Site specific monitoring of multiple information systems the HappyFace Project

SOSFTP Managed File Transfer

ARDA Experiment Dashboard

Source Code Review Using Static Analysis Tools

Developing large-scale Applications in Python

S3 Monitor Design and Implementation Plans

Content Management Systems: Drupal Vs Jahia

Automated Data Ingestion. Bernhard Disselhoff Enterprise Sales Engineer

Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led

Slide.Show Quick Start Guide

A Plan for the Continued Development of the DNS Statistics Collector

Designing Large-Scale Applications in Python

Elgg 1.8 Social Networking

Framework as a master tool in modern web development

Introduction to Digital Workflow Ticketing

Designing IT Platform Collaborative Applications with Microsoft SharePoint 2003 Workshop

Certified Selenium Professional VS-1083

Azure Day Application Development

AVALANCHE MC 5.3 AND DATABASE MANAGEMENT SYSTEMS

Development. CakePHP Application. development using the open-source MVC. Step-by-step introduction to rapid web. CakePHP framework.

<Insert Picture Here> Michael Hichwa VP Database Development Tools Stuttgart September 18, 2007 Hamburg September 20, 2007

ACCELRYS DISCOVERANT

TEST AUTOMATION FRAMEWORK

Developing ASP.NET MVC 4 Web Applications MOC 20486

Top 10 Oracle SQL Developer Tips and Tricks

High Level Design Distributed Network Traffic Controller

Realize your full potential with the new version of SIMATIC PCS 7

HTSQL is a comprehensive navigational query language for relational databases.

6.2 Reporting BIPublisher Improvements

Open Source Content Management Software : A Comparative Analysis

Integration of Virtualized Workernodes in Batch Queueing Systems The ViBatch Concept

Active Directory - User, group, and computer account management in active directory on a domain controller. - User and group access and permissions.

Analysis Programs DPDAK and DAWN

Microsoft Windows PowerShell v2 For Administrators

Content Management Systems: Drupal Vs Jahia

Rational Application Developer Performance Tips Introduction

Code Quality on Magento

Microsoft Dynamics CRM 2013 Applications Introduction Training Material Version 2.0

An Introduction to Using Python with Microsoft Azure

StreamServe Persuasion SP4 StreamServe Connect for SAP - Business Processes

PRiSM Security. Configuration and considerations

Documentation and Project Organization

Magento Search Extension TECHNICAL DOCUMENTATION

Security Testing For RESTful Applications

Extending Remote Desktop for Large Installations. Distributed Package Installs

CMS Dashboard of Grid Activity

SysPatrol - Server Security Monitor

Automation using Selenium

Continuous security audit automation with Spacewalk, Puppet, Mcollective and SCAP

Log Analyzer Reference

Peter Furesz, Tampa, Florida Mobile (USA) 1(914)

Developing ASP.NET MVC 4 Web Applications

PRESS RELEASE. Reporting Tool combit List & Label 18. Quick-Clicks. Printable Images Please visit:

Features & Benefits Summary. The Ulitmate Platform for Business Process Customization

Assignment # 1 (Cloud Computing Security)

AJAX Toolkit Framework

Creating Value through Innovation MAGENTO 1.X TO MAGENTO 2.0 MIGRATION

Reducing Total Cost of Ownership for Oracle Retail

Development Best Practices

Configuration Manual

Chapter 22: Integrating Flex applications with portal servers

USING MAGENTO TRANSLATION TOOLS

pbuilder Debian Conference 2004

SAP HANA Client Installation and Update Guide

MS 20413A: Designing and Implementing a Server Infrastructure

Example of Standard API

Ruby on Rails is a web application framework written in Ruby, a dynamically typed programming language The amazing productivity claims of Rails is

SyncThru Database Migration

IceWarp Server. Log Analyzer. Version 10

Manage Website Template That Using Content Management System Joomla

Who? Wolfgang Ziegler (fago) Klaus Purer (klausi) Sebastian Gilits (sepgil) epiqo Austrian based Drupal company Drupal Austria user group

Pyak47 - Performance Test Framework. Release 1.2.1

Automated Penetration Testing with the Metasploit Framework. NEO Information Security Forum March 19, 2008

An Overview. Executive Overview! Salestrakr LLC! Page 1

WHMCS LUXCLOUD MODULE

Workshop for WebLogic introduces new tools in support of Java EE 5.0 standards. The support for Java EE5 includes the following technologies:

Web Mapping in Archaeology

FileNet System Manager Dashboard Help

Open Source Monitoring

General principles and architecture of Adlib and Adlib API. Petra Otten Manager Customer Support

Archiving File Data with Snap Enterprise Data Replicator (Snap EDR): Technical Overview

SPT2013: Developing Solutions with. SharePoint DAYS AUDIENCE FORMAT COURSE DESCRIPTION STUDENT PREREQUISITES

How to Design and Create Your Own Custom Ext Rep

Preface. Motivation for this Book

A Web- based Approach to Music Library Management. Jason Young California Polytechnic State University, San Luis Obispo June 3, 2012

Designing and Implementing a Server Infrastructure

Transcription:

HappyFace3 everything now in Python ;-) Oliver Oberst, Günter Quast, Steffen Röcker, Marcus Schmitt, Gregor Vollmer, Stefan Wayand, Marian Zvada and the IEKP T1 Shifter-Team Institut für Experimentelle Kernphysik KIT University of the State of Baden-Wuerttemberg and National Research Center of the Helmholtz Association www.kit.edu

HappyFace Introduction HappyFace is a meta-monitoring framework aggregates remote and local site information from different expert monitoring sources. History Navigation Category Navigation Modules Navigation Module Content Simple Module and category rating system. 2

HappyFace Development / Usage HF core was/is developed at KIT to monitor GridKa T1 for CMS Additional module development and usage by: DESY Uni Hamburg RWTH Aachen Uni Göttingen Version 2 in production for over 3 years 3 Very reliable Main tool for T1_DE_KIT shifters and experts Used by several sites in Germany (ATLAS+CMS) Trial usage by CMS for batch system monitoring of all T1 sites

HappyFace - why do we need a new Version HappyFace 2: Python code with embedded PHP output code. Structural shortcommings Software packaging/release management difficult due to HF2 module/configuration directory structure Some functionality implemented late, not fully integrated in the core (e.g. certificate authentication) Full HappyFace rewrite required to address all issues HappyFace 3: Python-only HappyFace core and module code Uses a Python template engine (Mako, HTML templates) and CherryPy to replace embedded PHP output code Developers only need to code Python and create HTML templates Less and simpler code, faster to debug Clear separation of configuration and module code Code documentation with Sphinx from the start of development. Addresses most design flaws of version 2 4

HappyFace 3 in Detail Pure Python code (CherryPy) for functionality, web output separately designable with HTML templates (python-mako) Clearly separated file hierarchy of modules, core and configuration Modules can be imported from different sources Eases software packaging and release management User access control Client certificates Web output, archived files, plot generator, XML feed 5

HappyFace 3 in Detail New database access scheme sqlalchemy to access data Well defined relationships SQLite, PostgreSQL, Oracle, Easy automated maintenance Support for external tools Database migration / updates Interactive HappyFace shell Configuration generator Extensible functionality An drop box feature is on its way 6

HappyFace 3 in Detail Improved Networking: Categories loaded on separate pages On-demand reloading of details with AJAX Improved performance on mobile devices 7

HappyFace 3 in Detail New interactive plot generator Matplotlib backend User-friendly configuration page 8

HappyFace 2 vs 3 Code example: Module - CMSPhedexErrorLog HappyFace 2: Python + PHP inline: 602 LOC HappyFace 3: Python: 208 LOC HTML template: 102 LOC HTML: 9

HappyFace 2 vs 3 Code example: Module - CMSPhedexErrorLog HappyFace 2: HappyFace 3: Python + PHP inline: 602 LOC Python: 208 LOC HTML template: 102 LOC Up to 50% HTML: module code reduction!!! 10

HappyFace 3 - Documentation HappyFace 3 documentation uses Sphinx to generate the code documentation site from in-line comments: http://ekphappyface.physik.uni-karlsruhe.de/~happyface/docs/ 11

HappyFace 3 Release Plan / Status Gridka-Modules ported to HF3 Core development almost finished Open tickets Improvements in database update tool A drop box feature for HappyFace Documentation enhancements Reviewing and fixing of remaining module bugs Remaining issues non-essential, production usage will begin soon https://ekptrac.physik.uni-karlsruhe.de/trac/happyface/roadmap 12

Gridka-Instance http://ekphappyface.physik.uni-karlsruhe.de/happyface/gridka 13

Conclusion/Outlook HappyFace 2: Very successful veteran in meta-monitoring used at many sites Full HappyFace rewrite was needed to address all issues which accumulated over the years of production usage/development. HappyFace 3: Less and simpler code for module developers Testing phase started in November Aachen recently installed HF3 14