mirror of
https://bitbucket.org/theswgsource/src-1.2.git
synced 2026-07-15 00:08:07 -04:00
63 lines
2.2 KiB
C++
Executable File
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;
|
|
}
|
|
***********************************************************************************************/
|
|
}
|
|
|
|
//-----------------------------------------------------------------------
|