com.ls.lars.server
Class AgentSystemInformation

java.lang.Object
  |
  +--java.lang.Thread
        |
        +--com.ls.lars.communication.CommunicationTemplate
              |
              +--com.ls.lars.server.AgentTemplate
                    |
                    +--com.ls.lars.server.AgentSystemInformation
All Implemented Interfaces:
ICommunication, IToLars, Runnable, Serializable

public class AgentSystemInformation
extends AgentTemplate

This agent is able to write system information in the system's log file.


to Class Specification

 Incoming Messages:
    This agent offers the following services.
    -------------------------------------------------------------------------
    log_system_information
    -------------------------------------------------------------------------
    Function:   This message causes AgentSystemInformation to
                call Lars.logSystemInformation().
    Parameters: none
    Responses:  none
    -------------------------------------------------------------------------
 

To achive regular system information written to the log file you need to do two things: 1. Set up an AgentCron and add a notification of the following form in AgentCron.cfg: Example to log system information every minute: <MESSAGE> <service>notify_agent</service> <content> <period> <type>INTERVAL</type> <minute>15</minute> <hour>0</hour> <day>0</day> </period> <MESSAGE> <service>log_system_information</service> <receiver>SERVICE_PROVIDER</receiver> <content></content> </MESSAGE> </content> </MESSAGE> 2. Register for the log_system_information service by introducing the following message to this agent's config file: <MESSAGE> <service>register_service</service> <content>log_system_information</content> </MESSAGE>

Version:
$Revision: 1.8 $
Author:
Last modified by $Author: MHeitz $
See Also:
Serialized Form

Field Summary
protected  String revisionInformation
          revision information string, managed by our version control system
 
Fields inherited from class com.ls.lars.server.AgentTemplate
agentMaxPool, agentMessageRouterName, agentMinPool, defaultServiceAccessPermission, defaultServiceAccessPrivilege, dynamicObjectController, FULL_SERVICE_ACCESS, iXMLHandlerForConfigLoader, localPlatform, maxInvokeStackCounter, NO_SERVICE_ACCESS, RUN_LEVEL_ACTIONS_INITIALIZED, RUN_LEVEL_CONFIG_FILE_INTERPRETED, RUN_LEVEL_CONFIG_FILE_READ, RUN_LEVEL_EMBRYONIC, RUN_LEVEL_INTERPRET_METHODS_REGISTERED, RUN_LEVEL_POOL_INITIALIZED, RUN_LEVEL_RUNNING, RUN_LEVEL_STOPPED, RUN_LEVEL_TERMINATED
 
Fields inherited from class com.ls.lars.communication.CommunicationTemplate
agentName, homePlatform, iPKIHandler, logger, STATUS_CONNECTED, STATUS_NOT_CONNECTED
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Fields inherited from interface com.ls.lars.communication.ICommunication
AUTHENTICATION_PASSWORD, AUTHENTICATION_USER, COMPRESSION_AUTO_COMPRESSION, COMPRESSION_AUTO_COMPRESSION_START_SIZE, COMPRESSION_LEVEL, COMPRESSION_TYPE, COMPRESSION_ZIP_ENTRY_NAME, CONNECTION_TYPE, HOST_ID, HOST_IP, HOST_PORT, HTTP, J_SECURE_SOCKET, J_SOCKET, JMS, JMS_INITIAL_CONTEXT_FACTORY, JMS_JMSMESSENGER_APPLICATION_LOCATION, JMS_PROVIDER_URL, JMS_RECEIVING_QUEUE_NAME, JMS_SECURITY_CREDENTIALS, JMS_SECURITY_PRINCIPAL, JMS_SENDING_QUEUE_NAME, MAXIMUM_MESSAGE_LENGTH, PROTOCOL, RMI, SOCKET, TIMEOUT, USE_OUTBOX
 
Constructor Summary
AgentSystemInformation(String agentName, String homePlatform, List agentConfigFiles)
          Constructor with the agentName, its homePlatform and a List containing the names of the configuration file(s) of the new agent.
 
Method Summary
protected  String getRevisionInformation()
          gets the revision information of this class
protected  boolean interpretLogSystemInformation(Message currentMessage)
          executes Lars.logSystemInformation(), which logs detailed informations about the lars platform
 
Methods inherited from class com.ls.lars.server.AgentTemplate
executeLifeCycle, executeWhileRunning, getAgentRevisionInformation, getIPKIHandler, getOwnPublicKeyCertificate, initializeAction, initializeMessages, interpret, interpretAccessDenied, interpretAgentConnected, interpretCheckRegisteredServices, interpretCloseConnection, interpretDefineObject, interpretDeliveryFailed, interpretGetRevisionInformation, interpretInterpretationSuccessful, interpretLoadObject, interpretLogInbox, interpretMonitorLookup, interpretNotifiedAgent, interpretNotifyCanceled, interpretNotifyNotCanceled, interpretNotUnderstood, interpretPing, interpretRegisterService, interpretSendAsConfigured, interpretSetAccessPrivileges, interpretSetForeignPublicKeyCertificate, interpretSetLog, interpretSetOwnPublicKeyCertificate, interpretSetPkiEnvironment, interpretSetPkiMessages, interpretSetPrivateKey, interpretSetRunLevel, interpretSignatureNotValid, interpretStartupConstraint, loadConfigFile, performDefaultBehavior, reconnectAfterMigration, registerInterpretMethods, registerInterpretMethods, registerInterpretMethods, reInitializeAction, setAgentMessageRouterName, setIXMLHandler, setLocalPlatform, setPKIMessage, terminateAction, toString
 
Methods inherited from class com.ls.lars.communication.CommunicationTemplate
addConnectionParameter, checkSendSystemReply, connect, createReplyId, disconnect, disconnectForMigration, finalize, forwardMessage, forwardMessage, getAgentName, getConnectionParameters, getInboxSize, getLarsHost, getNumberOfProcessedMessages, getNumberOfProcessedMessagesPerMinute, getStartTime, isConnected, logInbox, receiveBlockedMessage, receiveBlockedMessage, run, sendMessage, sendSynchronousRequest, sendSynchronousRequest, setConnectionParameters, setLog, setMeantimeBetweenConnectionCheck, waitForConnection, waitForConnection
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, yield
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.ls.lars.communication.IToLars
start
 

Field Detail

revisionInformation

protected String revisionInformation
revision information string, managed by our version control system
Constructor Detail

AgentSystemInformation

public AgentSystemInformation(String agentName,
                              String homePlatform,
                              List agentConfigFiles)
Constructor with the agentName, its homePlatform and a List containing the names of the configuration file(s) of the new agent.
Parameters:
agentName - name of the agent (example: xyz )
homePlatform - name of the homePlatform where the agent was created (example: 195.52.158.233/lars)
agentConfigFiles - config file(s), which should be read by the agent when it starts up (example: AgentTest.cfg)
Method Detail

getRevisionInformation

protected String getRevisionInformation()
gets the revision information of this class
Overrides:
getRevisionInformation in class AgentTemplate
Returns:
the revision information

interpretLogSystemInformation

protected boolean interpretLogSystemInformation(Message currentMessage)
executes Lars.logSystemInformation(), which logs detailed informations about the lars platform
Parameters:
currentMessage - "log_system_information" message
Returns:
always true