Sidebar 1: Overview
This article offers two solutions to secure, automatic viewing of logfiles on remote systems, these solutions compose the LogViewer application. LogViewer offers a centralized cross-platform desktop application that allows instant access of real-time log data. Facilitating analysis, LogViewer offers these additional tools:
Command-line API allows other jobs to launch LogViewer to a preset log group, accelerating problem resolution.
Autonomous alarming and frequency analysis of log contents allows LogViewer to automatically react to specified events as they occur, on both local and remote nodes.
Buffering of log data allows application to instantly give historical log data and allows client desktop to start/stop scrolling of log files without loss of data integrity
Dynamic reading of configuration data allows LogViewer to receive and process changes in subscription and alarm configuration without cycling services.
Dynamic Recovery LogViewer architecture is designed to recover from failure automatically. When individual modules within LogViewer fail, the rest of the system continues normal functions.
Benign Architecture LogViewer operates on both Unix and Win32 platforms with minimal configuration changes and does not change values in the registry or kernel.
Isomorphic LogViewer Code
The isomorphic LogViewer is composed of three elements: the local_client (the graphical user interface that receives new log text), the aux_server (tails the file) and the Obelisk, or master server. Note that clusters of isomorphic LogViewers can be ran via a button console (see Figure 4).
Master-Server
Act as RPC server.
Keep a copy of the latest line in the buffer.
Local-Client
The client needs to perform the following:
Act as a RPC client that asks the server for new lines from a logfile.
Build a GUI to receive and post new log text in.
Aux-Server
The server needs to perform the following:
Monitor, or tail, the desired file.
Transfer new text from the file, via RPC, to the master_server.pl.
|