The TANGO Logging Service Status Implementation details Possible enhancements.

Slides:



Advertisements
Similar presentations
Logging in Java applications Sean C. Sullivan July 23, 2002 Portland Java Users Group.
Advertisements

Distributed Logging in Java with Constrained Resource Usage Sunil Brown Varghese, Daniel Andresen Dept. of Computing and Information Sciences Kansas State.
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
V0.01 © 2009 Research In Motion Limited Introduction to Java Application Development for the BlackBerry Smartphone Trainer name Date.
Esri International User Conference | San Diego, CA Technical Workshops | Migrating Custom Desktop Solutions from 9.3 to 10 John Hauck and Ralf Gottschalk.
ACS Logging System Concepts and Example H.Sommer (Restructured, based on slides from previous years) UTFSM Valparaiso, Chile, Nov ACS Logging System.
© 2006 by IBM 1 How to use Eclipse to Build Rich Internet Applications With PHP and AJAX Phil Berkland IBM Software Group Emerging.
ACNET Alarms Brian Hendricks October 18, Alarm Types analog – simple comparison to minimum and maximum values single set of limits digital – nominal.
Logging with Log4j. Introduction Logging - chronological and systematic record of data processing events in a program. Possible goals: Create an audit.
© 2007 IBM Corporation IBM Global Engineering Solutions IBM Blue Gene/P Blue Gene/P Navigator.
Dessy, 17 september 2007 Tango Meeting Development of Tango Client Applications in Python Tiago Coutinho and Josep Ribas.
Cosc 5/4730 Broadcast Receiver. Broadcast receiver A broadcast receiver (short receiver) – is an Android component which allows you to register for system.
LogBox Enterprise Logging Brad Wood
Model Based Conformance Testing for Extensible Internet Protocols Anastasia Tugaenko Scientific Adviser: Nikolay Pakulin, PhD.
Chapter 2: Operating-System Structures. 2.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 2: Operating-System Structures Operating.
1 of of 25 3 of 25 ORBs (Object Request Broker) – A distributed software bus for communication among middleware services and applications – To.
Google Web Toolkit An Overview By Shauvik Roy Choudhary.
Module 8 DNS Tools & Diagnostics. Objectives Understand dig and nslookup Understand BIND toolset Understand BIND logs Understand wire level messages.
ACS Logging System APIs: C++ Bogdan Jeram European Southern Observatory July 2004NRAO.
1 Cisco Unified Application Environment Developers Conference 2008© 2008 Cisco Systems, Inc. All rights reserved.Cisco Public Introduction to Etch Scott.
ICALEPCS Archamp 08 – 09 October, 2005 ACS Alarm system prototype Alessandro Caproni.
Control in ATLAS TDAQ Dietrich Liko on behalf of the ATLAS TDAQ Group.
Sonic EventMonitor Monitoring your Sonic environment Tako Grijpma Progaia Resource Solutions 09 november 2006.
Visualizing DIET and JuxMem Mathieu Jan PARIS Research Group IRISA INRIA & ENS Cachan / Brittany Extension Rennes Lyon, July 2004.
Technical Presentation
Logging1. 2 Introduction Ships must keep a written log telling speed, direction, destination, etc. –A kind of diary of the ship. Large programs should.
13-1 Monitoring and Metering Learning Objectives ● This module will help you... – Understand the JXTA monitoring and metering functionality – Gain.
CORBA Common Object Request Broker Architecture. Basic Architecture A distributed objects architecture. Logically, an object client makes method calls.
Presented By:- Sudipta Dhara Roll Table of Content Table of Content 1.Introduction 2.How it evolved 3.Need of Middleware 4.Middleware Basic 5.Categories.
© 2006 Intland Software1 Aron Gombas Architect, Intland Software Extending & customizing CodeBeamer.
TANGO Events “To be or not to be ?” Architecture Implementation Demonstration (?) Open questions.
David Lawrence 7/8/091Intro. to PHP -- David Lawrence.
The Log4E logging plug-in David Gallardo. What is logging good for? Tracing program execution during development Debugging Providing an audit trail for.
Debugging TI RTOS TEAM 4 JORGE JIMENEZ JHONY MEDRANO ALBIEN FEZGA.
Msdevcon.ru#msdevcon. ИЗ ПЕРВЫХ РУК: ДИАГНОСТИКА ПРИЛОЖЕНИЙ С ПОМОЩЮ ИНСТРУМЕНТОВ VISUAL STUDIO 2012 MAXIM GOLDIN Senior Developer, Microsoft.
EPICS to TANGO Translator Rok Šabjan on behalf of Rok Štefanič Presented at ICALEPCS, Knoxville, October.
IIS 7 for Hosters Deven Kampenhout Web Platform Architect Developer & Platform Evangelism.
PIKA Technologies Inc. Digital Logger Application Sample March 2010.
New Classes for Debug, Info and Error Messages Thomas Kuhr Offline Week 15/09/2004.
1 Java Server Pages A Java Server Page is a file consisting of HTML or XML markup into which special tags and code blocks are inserted When the page is.
® IBM Software Group © 2006 IBM Corporation How to utilize logging in EGL This Learning Module shows how to utilize the open source log4j project from.
© 2008 by Wind River; made available under the EPL v1.0 | 19-Nov-2008 TCF The Target Communication Framework Michael Scharf, Wind River wiki.eclipse.org/DSDP/TM/TCF_FAQ.
New Project Model UI Primary Author: Mikhail Sennikovsky Major contributors: Mikhail Voronin, Oleg Krasilnikov, Leo Treggiari Intel Corporation September,
STAR Scheduling status Gabriele Carcassi 9 September 2002.
Jetty 9 Dima Ionut Daniel. Contents What is Jetty? History Jetty 9 new features Jetty Configuration Deployment Arhitecture JMX SPDY Handlers WebSocket.
THE EYESWEB PLATFORM - GDE The EyesWeb XMI multimodal platform GDE 5 March 2015.
Real world OS programming Nezer J. Zaidenberg.  Create process/thread  File and directory I/O  I/O multiplexing  Sync and locking  Access system.
Event Management. EMU Graham Heyes April Overview Background Requirements Solution Status.
Downloading a new OS kernel to the EBox. Connecting to the eBox Use Network Cable to connect Need to decide if you will be using a Static IP or DHCP Details.
Service Charging Platform. EMS (Entity Management System) 0 Logging Agent Provides detailed activity logs and reports all raw facts as they happen to.
© 2001 By Default! A Free sample background from Slide 1 Motivation CMW logging Real-Time Task CMW Server Logging thread.
Milan Vukoje State of the art logging October 23 rd 2013.
SunGuide SM Software Development Project Software Design Review May 12, 2004.
Ext JS - Direct Bridging The Gap A DMSBT Presentation By Timothy Chandler.
Monitoring Dynamic IOC Installations Using the alive Record Dohn Arms Beamline Controls & Data Acquisition Group Advanced Photon Source.
CS520 Web Programming Bits and Pieces of Web Programming (I) Chengyu Sun California State University, Los Angeles.
Logging Microservice Deep Dive
Implementing the syslog Protocol on a Radlan router
Error Handling – the Debug and Trace Classes
Data Transport for Online & Offline Processing
Tango Administrative Tools
Notification Channel - Java API
Using Visual Studio and VS Code for Embedded C/C++ Development
1. Open Visual Studio 2008.
Exploring the Power of EPDM Tasks - Working with and Developing Tasks in EPDM By: Marc Young XLM Solutions
Testing, debugging, and using support libraries
CORBA usage within the TANGO control system
MS Confidential : SharePoint 2010 Developer Workshop (Beta1)
Corporate Training Center
TANGO from an EPICS perspective
Presentation transcript:

The TANGO Logging Service Status Implementation details Possible enhancements

TLS: Status Usable prototype Available for C++ TANGO devices… –…but easily portable Java (log4j + port of the C++ implementation) Python (binding of the DeviceProxy class) –tested under Linux and Win32 Logging is controlled on a per device basis –TANGO Device = smallest controllable entity –Logging Level 1 device 1 logging level (for all targets) OFF < FATAL < ERROR < WARN < INFO < DEBUG –Logging Targets 1. Console (cout) N. XML Files (Chainsaw format) N. LogConsumer device or any device::log(DevVarStringArray)

TLS: Status Controlling the logging behavior of a device startup (static configuration) logging from the device constructor 2 device properties –logging_level –logging_target no command line option (required?) runtime (dynamic configuration) change logging level add/remove logging targets 2 ways –Dserver’s TANGO commands –DeviceProxy methods (requests forwarded to DServer)

TLS: Status Syntax –10 easy to use macros 5 with “printf” like syntax: –LOG_{FATAL, ERROR, WARN, INFO, DEBUG} –LOG_DEBUG((“Msg#%d - Hello world”, i++)); 5 with C++ stream syntax: –{FATAL, ERROR, WARN, INFO, DEBUG}_STREAM –DEBUG_STREAM << “Msg#” << i++ << “- Hello world” << ENDLOG;

TLS: Status Limitations –Can’t log TANGO core messages  Granularity : one logger per device cout1…4 macros should use the “current” device’s logger. How to do this? TSS required –attach device’s logger to the current thread in CORBA methods (IDL) –polling thread uses the DServer’s logger –map cout1…4 to {INFO or DEBUG}_STREAM –map endl to ENDLOG Side effects and drawbacks –example: Dserver::Init No perfect solution! Conclusion?

TLS: Implementation Details TANGO Core: DServer AddLoggingTarget( [{devname_pattern, tg_type, tg_name}, …]) RemoveLoggingTarget( [{devname_pattern, tg_type, tg_name}, …]) GetLoggingLevel ([devname]) SetLoggingLevel ([level], [devname]) GetLoggingTarget (devname) StopLogging () StartLogging () C++ API: DeviceProxy add_logging_target remove_logging_target get_logging_level set_logging_level (devname) get_logging_target (devname)

TLS: Implementation Details Compatibility –Use DeviceImplExt to extend DeviceImpl TLS is a TANGO option –#define TANGO_HAS_LOG4CPP

TLS: Possible Enhacements LogConsumer Targets –Use TANGO events… use case: machine (notification service) simplify “producer” code –only one connection –worse case: only one “zombie appender” per device “logging_channel” device property –Use TANGO Asynchronous Calls use case: experiments (no notification service) send and forget (non blocking mode)

TLS: Possible Enhacements File Targets –rolling mechanism(s) RollingFileAppender and/or DailyRollingFileAppender –logging_path property Console Target –any suggestion?

TLS: Demo