10 #include <boost/lexical_cast.hpp>
17 if ( error_code != 0 && errsv != EEXIST ) {
18 rodsLog(
LOG_ERROR,
"mkdir failed in initAndClearProcLog with error code %d", error_code );
38 char *clientZone, *proxyZone;
51 clientZone =
"UNKNOWN";
60 proxyZone =
"UNKNOWN";
67 remoteAddr = inet_ntoa( rsComm->
remoteAddr.sin_addr );
68 if ( remoteAddr ==
NULL || *remoteAddr ==
'\0' ) {
69 remoteAddr =
"UNKNOWN";
71 if ( *rsComm->
option ==
'\0' ) {
80 fptr = fopen( procPath,
"w" );
84 "logAgentProc: Cannot open input file %s. errno = %d",
89 fprintf( fptr,
"%s %s %s %s %s %s %u\n",
92 progName, remoteAddr, (
unsigned int ) time( 0 ) );
111 if ( procLog ==
NULL ) {
118 std::fstream procStream( procPath, std::ios::in );
119 std::vector<std::string> procTokens;
120 while ( !procStream.eof() && procTokens.size() < 7 ) {
123 procTokens.push_back(
token );
126 if ( procTokens.size() != 7 ) {
128 "readProcLog: error fscanf file %s. Number of param read = %d",
129 procPath, procTokens.size() );
137 snprintf( procLog->
proxyName,
sizeof( procLog->
proxyName ),
"%s", procTokens[2].c_str() );
138 snprintf( procLog->
proxyZone,
sizeof( procLog->
proxyZone ),
"%s", procTokens[3].c_str() );
139 snprintf( procLog->
progName,
sizeof( procLog->
progName ),
"%s", procTokens[4].c_str() );
142 procLog->
startTime = boost::lexical_cast<unsigned int>( procTokens[6].c_str() );
145 rodsLog(
LOG_ERROR,
"Could not convert %s to unsigned int.", procTokens[6].c_str() );