NetworkAgent

Accounting agent to consume perfSONAR network metrics received via a message queue.

class DIRAC.AccountingSystem.Agent.NetworkAgent.NetworkAgent(agentName, loadName, baseAgentName=False, properties={})

Bases: DIRAC.Core.Base.AgentModule.AgentModule

AccountingSystem agent to processes messages containing perfSONAR network metrics. Results are stored in the accounting database.

BUFFER_TIMEOUT = 3600
am_Enabled()
am_checkStopAgentFile()
am_createStopAgentFile()
am_disableMonitoring()
am_getBasePath()
am_getControlDirectory()
am_getCyclesDone()
am_getMaxCycles()
am_getModuleParam(optionName)
am_getOption(optionName, defaultValue=None)
am_getPollingTime()
am_getShifterProxyLocation()
am_getStopAgentFile()
am_getWatchdogTime()
am_getWorkDirectory()
am_go()
am_initialize(*initArgs)
am_monitoringEnabled()
am_removeStopAgentFile()
am_secureCall(functor, args=(), name=False)
am_setModuleParam(optionName, value)
am_setOption(optionName, value)
am_stopExecution()
beginExecution()
checkConsumers()

Check whether consumers exist and work properly. (Re)create consumers if needed.

commitData()

Iterates through all object in the temporary buffer and commit objects to DB if both packet-loss-rate and one-way-delay values are set.

Objects in the buffer older than self.bufferTiemout seconds which still have missing data are removed permanently (a warning is issued).

endExecution()
execute()

During each cycle update the internal host-to-dirac name dictionary, check the consumers status (restart them if necessary), commit data stored in the buffer and show statistics.

finalize()

Gracefully close all consumer connections and commit last records to the DB.

initialize()
processMessage(headers, body)

Process a message containing perfSONAR data and store the result in the Accounting DB. Supports packet-loss-rate and one-way-delay metrics send in raw data streams.

Function is designed to be an MQConsumer callback function.

showStatistics()

Display different statistics as info messages in the log file.

updateNameDictionary()

Update the internal host-to-dirac name dictionary.