You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.8 KiB
59 lines
1.8 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
//=============================================================================// |
|
|
|
#ifndef MPI_STATS_H |
|
#define MPI_STATS_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
|
|
// The VMPI stats module reports a bunch of statistics to a MySQL server, and the |
|
// stats can be used to trace and graph a compile session. |
|
// |
|
|
|
// Call this as soon as possible to initialize spew hooks. |
|
void VMPI_Stats_InstallSpewHook(); |
|
|
|
// |
|
// pDBServerName is the hostname (or dotted IP address) of the MySQL server to connect to. |
|
// pBSPFilename is the last argument on the command line. |
|
// pMachineIP is the dotted IP address of this machine. |
|
// jobID is an 8-byte unique identifier for this job. |
|
// |
|
bool VMPI_Stats_Init_Master( const char *pHostName, const char *pDBName, const char *pUserName, const char *pBSPFilename, unsigned long *pDBJobID ); |
|
bool VMPI_Stats_Init_Worker( const char *pHostName, const char *pDBName, const char *pUserName, unsigned long DBJobID ); |
|
void VMPI_Stats_Term(); |
|
|
|
// Add a generic text event to the database. |
|
void VMPI_Stats_AddEventText( const char *pText ); |
|
|
|
class CDBInfo |
|
{ |
|
public: |
|
char m_HostName[128]; |
|
char m_DBName[128]; |
|
char m_UserName[128]; |
|
}; |
|
|
|
// If you're the master, this loads pDBInfoFilename, sends that info to the workers, and |
|
// connects to the database. |
|
// |
|
// If you're a worker, this waits for the DB info, then connects to the database. |
|
void StatsDB_InitStatsDatabase( |
|
int argc, |
|
char **argv, |
|
const char *pDBInfoFilename ); |
|
|
|
// The database gives back a unique ID for the job. |
|
unsigned long StatsDB_GetUniqueJobID(); |
|
|
|
// Get the worker ID (used for the JobWorkerID fields in the database). |
|
unsigned long VMPI_Stats_GetJobWorkerID(); |
|
|
|
|
|
#endif // MPI_STATS_H
|
|
|