Files
src-1.2/engine/server/application/ConnectionServer/src/shared/ConnectionServerMetricsData.cpp
T

63 lines
2.2 KiB
C++
Executable File

//ConnectionServerMetricsData.cpp
//Copyright 2002 Sony Online Entertainment
#include "FirstConnectionServer.h"
#include "ConnectionServerMetricsData.h"
#include "ConnectionServer.h"
#include "serverNetworkMessages/MetricsDataMessage.h"
#include "sharedNetworkMessages/GameNetworkMessage.h"
#include "ClientConnection.h"
#include "sharedLog/Log.h"
//-----------------------------------------------------------------------
ConnectionServerMetricsData::ConnectionServerMetricsData() :
MetricsData()
{
MetricsPair p;
ADD_METRICS_DATA(numUsers, 0, false);
ADD_METRICS_DATA(numGameServers, 0, false);
ADD_METRICS_DATA(pingTrafficNumBytes, 0, false);
}
//-----------------------------------------------------------------------
ConnectionServerMetricsData::~ConnectionServerMetricsData()
{
}
//-----------------------------------------------------------------------
void ConnectionServerMetricsData::updateData()
{
MetricsData::updateData();
m_data[m_numUsers].m_value = ConnectionServer::getNumberOfClients();
m_data[m_numGameServers].m_value = ConnectionServer::getNumberOfGameServers();
m_data[m_pingTrafficNumBytes].m_value = ConnectionServer::getPingTrafficNumBytes();
/****************** disabled due to stats failing to update on live *********************
std::map< std::string, uint32 >& cpmap = ClientConnection::getPacketBytesPerMinStats();
std::map< std::string, uint32 >::iterator cpiter;
// Shared packet metrics
for ( cpiter = cpmap.begin(); cpiter != cpmap.end(); ++cpiter )
{
std::map< std::string, unsigned long>::iterator miter = m_packetDataMap.find( cpiter->first );
if ( miter == m_packetDataMap.end() ) // If we haven't added this packet metric yet....
{
MetricsData* p_met = MetricsData::getInstance();
std::string s_key("ConnectionClientPackets_BytesPerMin.");
s_key+=cpiter->first;
m_packetDataMap[ cpiter->first ] = p_met->addMetric(s_key.c_str(), 0, 0, true, true); // add the ID to the local map
miter = m_packetDataMap.find( cpiter->first );
}
m_data[ miter->second ].m_value = cpiter->second;
}
***********************************************************************************************/
}
//-----------------------------------------------------------------------