Distributed Logging in Java with Constrained Resource Usage Sunil Brown Varghese, Daniel Andresen Dept. of Computing and Information Sciences Kansas State.

Slides:



Advertisements
Similar presentations
Mobile Agents Mouse House Creative Technologies Mike OBrien.
Advertisements

Java Network Programming Vishnuvardhan.M. Dept. of Computer Science - SSBN Java Overview Object-oriented Developed with the network in mind Built-in exception.
M. Muztaba Fuad Masters in Computer Science Department of Computer Science Adelaide University Supervised By Dr. Michael J. Oudshoorn Associate Professor.
MS CRM Integration WhosOn Service Integration Presentation MS CRM User Group.
Copyright 2007, Information Builders. Slide 1 Workload Distribution for the Enterprise Mark Nesson, Vashti Ragoonath June, 2008.
Implementing Remote Procedure Calls Authored by: Andrew D. Birrel and Bruce Jay Nelson Presented by: Terry, Jae, Denny.
Slide 1 Client / Server Paradigm. Slide 2 Outline: Client / Server Paradigm Client / Server Model of Interaction Server Design Issues C/ S Points of Interaction.
A CHAT CLIENT-SERVER MODULE IN JAVA BY MAHTAB M HUSSAIN MAYANK MOHAN ISE 582 FALL 2003 PROJECT.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 11: Monitoring Server Performance.
Introduction to Web Database Processing
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved L24 (Chapter 25) Networking.
1 PLuSH – Mesh Tree Fast and Robust Wide-Area Remote Execution Mikhail Afanasyev ‧ Jose Garcia ‧ Brian Lum.
SNMP auto LVS balancing Jason Liptak. Overview SNMP overview Network Setup Solution Lessons Learned Future 5/4/2011Jason Liptak 2.
Introduction to Web Interface Technology (CSE2030)
Lesson 20 – OTHER WINDOWS 2000 SERVER SERVICES. DHCP server DNS RAS and RRAS Internet Information Server Cluster services Windows terminal services OVERVIEW.
Hands-On Microsoft Windows Server 2003 Administration Chapter 5 Administering File Resources.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved L22 (Chapter 25) Networking.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Chapter 25 Networking.
11 MONITORING MICROSOFT WINDOWS SERVER 2003 Chapter 3.
©Company confidential 1 Performance Testing for TM & D – An Overview.
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
Check Disk. Disk Defragmenter Using Disk Defragmenter Effectively Run Disk Defragmenter when the computer will receive the least usage. Educate users.
Course 6421A Module 7: Installing, Configuring, and Troubleshooting the Network Policy Server Role Service Presentation: 60 minutes Lab: 60 minutes Module.
Włodzimierz Funika, Filip Szura Automation of decision making for monitoring systems.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Module 7: Configuring TCP/IP Addressing and Name Resolution.
1 The SpaceWire Internet Tunnel and the Advantages It Provides For Spacecraft Integration Stuart Mills, Steve Parkes Space Technology Centre University.
Using Group Policy to Manage User Environments. Overview Introduction to Managing User Environments Introduction to Administrative Templates Assigning.
Screen Snapshot Service Kurt Biery SiTracker Monitoring Meeting, 23-Jan-2007.
RMI Components java.rmi: client-side RMI classes, interfaces, and exceptions java.rmi.server: server-side RMI classes, interfaces, and exceptions java.rmi.registry:
Institute of Computer and Communication Network Engineering OFC/NFOEC, 6-10 March 2011, Los Angeles, CA Lessons Learned From Implementing a Path Computation.
Cognos TM1 Satya Mobile:
5 Chapter Five Web Servers. 5 Chapter Objectives Learn about the Microsoft Personal Web Server Software Learn how to improve Web site performance Learn.
Objectives Configure routing in Windows Server 2008 Configure Routing and Remote Access Services in Windows Server 2008 Network Address Translation 1.
Honeypot and Intrusion Detection System
Module 7: Fundamentals of Administering Windows Server 2008.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 11: Monitoring Server Performance.
Module 10: Monitoring ISA Server Overview Monitoring Overview Configuring Alerts Configuring Session Monitoring Configuring Logging Configuring.
Citrix MPS 3.0 Licensing Douglas A. Brown President
Implementing Remote Procedure Calls Authored by Andrew D. Birrell and Bruce Jay Nelson Xerox Palo Alto Research Center Presented by Lars Larsson.
Adaptable Consistency Control for Distributed File Systems Simon Cuce Monash University Dept. of Computer Science and Software.
Distributed monitoring system. Why Monitor? Solve them! Identify Problems Ensure conduct Requirements Manage many computers Spot trends in the system.
1 Chapter 28 Networking. 2 Objectives F To comprehend socket-based communication in Java (§28.2). F To understand client/server computing (§28.2). F To.
RMI remote method invocation. Traditional network programming The client program sends data to the server in some intermediary format and the server has.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 11: Monitoring Server Performance.
 Remote Method Invocation  A true distributed computing application interface for Java, written to provide easy access to objects existing on remote.
Liang, Introduction to Java Programming, Seventh Edition, (c) 2009 Pearson Education, Inc. All rights reserved Chapter 43 Remote Method Invocation.
Framework for MDO Studies Amitay Isaacs Center for Aerospace System Design and Engineering IIT Bombay.
Apache JMeter By Lamiya Qasim. Apache JMeter Tool for load test functional behavior and measure performance. Questions: Does JMeter offers support for.
Java Programming: Advanced Topics 1 Networking Programming Chapter 11.
Prepared by: Azara Prakash L.. Contents:-  Data Transmission  Introduction  Socket Description  Data Flow Diagram  Module Design Specification.
Logic Analyzer ECE-4220 Real-Time Embedded Systems Final Project Dallas Fletchall.
Shuman Guo CSc 8320 Advanced Operating Systems
Rensselaer Polytechnic Institute CSCI-4210 – Operating Systems David Goldschmidt, Ph.D.
1 Management of Distributed Data Tomasz Müldner, Elhadi Shakshuki*, Zhonghai Luo and Michael Powell Jodrey School of Computer Science, Acadia University,
File Transfer And Access (FTP, TFTP, NFS). Remote File Access, Transfer and Storage Networks For different goals variety of approaches to remote file.
Remote Method Invocation A Client Server Approach.
Hands-On Microsoft Windows Server 2008 Chapter 5 Configuring Windows Server 2008 Printing.
Maintaining and Updating Windows Server 2008 Lesson 8.
Presented by Deepak Varghese Reg No: Introduction Application S/W for server load balancing Many client requests make server congestion Distribute.
Liang, Introduction to Java Programming, Ninth Edition, (c) 2013 Pearson Education, Inc. All rights reserved. 1 Chapter 33 Networking.
WWW and HTTP King Fahd University of Petroleum & Minerals
Module Overview Installing and Configuring a Network Policy Server
Self Healing and Dynamic Construction Framework:
MCA – 405 Elective –I (A) Java Programming & Technology
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Knowledge Byte In this section, you will learn about:
Outline Overview Development Tools
Remote Method Invocation
Client/Server and Peer to Peer
Presentation transcript:

Distributed Logging in Java with Constrained Resource Usage Sunil Brown Varghese, Daniel Andresen Dept. of Computing and Information Sciences Kansas State University

Overview Introduction to Logging Distributed Logging Distributed Logging with RMI Conclusions

Introduction Everyone logs in one way or other… print(), out, System.out.print() are examples of console logging Large systems like aircraft monitoring systems, transaction–based financial processes may log into multiple targets

Advantages of Logging Feedback to developers during development cycles Provide system diagnostic alerts from production systems Provide information for statistical analysis of working of a system Delivery based on levels of importance could improve efficiency in development cycle

Logging options The Log4J Project Logging Toolkit for Java from IBM Java 2 Standard Edition (v1.4.0 onward)

Distributed Logging

Log4j has good support for sending log messages to multiple log servers by TCP/IP socket connections J2SE provides the Java Logging framework by default and supports distribution of log messages by socket connections (though listeners are left to the developer)

Java Logging Framework

Observation effects the Observed If generated at a high rate, distributed log messages may swamp the processor and the network connections whereby decreasing system performance and the accuracy of the log analysis Solution: Limit the use of distributed log messages to critical and non-repetitive sections of code and buffer messages

Distributed Logging with RMI Transmission of Log messages with RMI calls allows the log objects to be recorded at remote sites as is Log messages may be modified easily ( say based on network load, exception objects may be removed from log)

Representation

Extending the Java Logging Framework RMI Handler extended from Handler class ensuring compatibility with Logger and security in-built into Java Logging The logging levels may be varied dynamically against bandwidth usage by providing level information in an XML file

Class View – Client Side

Class View – Server Side

Sample Levels.xml file

RMI Log Server Instantiates a logger and assigns the RMI Handler and other Handlers based on an XML file Server binds to the specified machine and port (binding data from input XML file) This framework allows a chain of RMI Servers to be formed connected by RMI Handlers in a tree fashion

Bandwidth Computation TCP/IP based weighted average method is used to update bandwidth Bandwidth is sampled for a Sampling Time and it is reset for a fresh start If there is no bandwidth updates for an Inactivity Tolerance period, the Bandwidth is reset

RMI Log Buffer The RMI Handler may buffer the log messages so as to reduce the number of RMI calls needed. This could dramatically raise the efficiency of transmission The RMI Buffer ensures message transmission under normal RMI Handler operation and abnormal termination

RMI Log Server GUI The GUI connects to RMI Log Server and provides time graphs of bandwidth statistics The cutoffs along with bandwidth variance are shown

RMI Log Server GUI

RMI Log Server GUI Connection As there isn’t a unique naming scheme for RMI Handlers connected to a logger, the URL and port information is used as RMI Handler identifier

RMI Log Server GUI Connection

Limitations / Assumptions Leveling thresholds at the RMI Handler level are to be set intuitively by the user Log message sizes were taken as constants for testing purposes The overhead of making an RMI call is heavier than sending data through TCP/IP sockets

Conclusions RMI Logging allows the recreation of log messages in remote sites as long as all sub-components are serializable Allows the exception objects to be stored in remote repositories RMI Handler can monitor its bandwidth usage and discard log messages of low level

Future work RMI Handler may maintain a server list so that if one RMI Log Server fails, it retransmits to secondary servers The GUI interface can be developed further to remotely control RMI Log Servers

Questions ?