Esempio n. 1
0
    void printShardingVersionInfo( bool out ) {
        if ( out ) {
            cout << "MongoS version " << versionString << " starting: pid=" <<
                ProcessId::getCurrent() << " port=" << cmdLine.port <<
                ( sizeof(int*) == 4 ? " 32" : " 64" ) << "-bit host=" << getHostNameCached() <<
                " (--help for usage)" << endl;
            DEV cout << "_DEBUG build" << endl;
            cout << "git version: " << gitVersion() << endl;
#ifdef MONGO_SSL
            cout << "OpenSSL version: " << openSSLVersion() << endl;
#endif
            cout <<  "build sys info: " << sysInfo() << endl;
        }
        else {
            log() << "MongoS version " << versionString << " starting: pid=" <<
                ProcessId::getCurrent() << " port=" << cmdLine.port <<
                ( sizeof( int* ) == 4 ? " 32" : " 64" ) << "-bit host=" << getHostNameCached() <<
                " (--help for usage)" << endl;
            DEV log() << "_DEBUG build" << endl;
            printGitVersion();
#ifdef MONGO_SSL
            printOpenSSLVersion();
#endif
            printSysInfo();
            printCommandLineOpts();
        }
    }
Esempio n. 2
0
        void doUnlockedStuff(stringstream& ss) {
            /* this is in the header already ss << "port:      " << port << '\n'; */
            ss << mongodVersion() << "\n";
            ss << "git hash: " << gitVersion() << "\n";
            ss << "sys info: " << sysInfo() << "\n";
            ss << "\n";
            ss << "dbwritelocked:  " << dbMutex.info().isLocked() << " (initial)\n";
            ss << "uptime:    " << time(0)-started << " seconds\n";
            if ( replAllDead )
                ss << "<b>replication replAllDead=" << replAllDead << "</b>\n";
            ss << "\nassertions:\n";
            for ( int i = 0; i < 4; i++ ) {
                if ( lastAssert[i].isSet() ) {
                    ss << "<b>";
                    if ( i == 3 ) ss << "usererr";
                    else ss << i;
                    ss << "</b>" << ' ' << lastAssert[i].toString();
                }
            }

            ss << "\nreplInfo:  " << replInfo << '\n';

            {
                boostlock bl(Client::clientsMutex);
                for( set<Client*>::iterator i = Client::clients.begin(); i != Client::clients.end(); i++ ) { 
                    Client *c = *i;
                    CurOp& co = *(c->curop());
                    ss << "currentOp (unlocked): " << co.infoNoauth() << "\n";
                }
            }
        }
Esempio n. 3
0
 void printShardingVersionInfo(bool out) {
     if (out) {
       cout << mongosCommand << " " << mongodVersion() << " starting (--help for usage)" << endl;
       cout << "git version: " << gitVersion() << endl;
       cout <<  "build sys info: " << sysInfo() << endl;
     } else {
       log() << mongosCommand << " " << mongodVersion() << " starting (--help for usage)" << endl;
       printGitVersion();
       printSysInfo();
     }
 }
Esempio n. 4
0
    void appendBuildInfo(BSONObjBuilder& result) {
       result << "version" << versionString
              << "gitVersion" << gitVersion()
              << "sysInfo" << sysInfo()
              << "loaderFlags" << loaderFlags()
              << "compilerFlags" << compilerFlags()
              << "allocator" << allocator()
              << "versionArray" << versionArray
              << "javascriptEngine" << compiledJSEngine()
/*TODO: add this back once the module system is in place -- maybe once we do something like serverstatus with callbacks*/
//              << "interpreterVersion" << globalScriptEngine->getInterpreterVersionString()
              << "bits" << ( sizeof( int* ) == 4 ? 32 : 64 );
       result.appendBool( "debug" , debug );
       result.appendNumber("maxBsonObjectSize", BSONObjMaxUserSize);
    }
Esempio n. 5
0
 bool run(const std::string& dbname,
          BSONObj& jsobj,
          int, // options
          std::string& errmsg,
          BSONObjBuilder& result,
          bool fromRepl) {
     result << "version" << versionString
            << "gitVersion" << gitVersion()
            << "sysInfo" << sysInfo()
            << "versionArray" << versionArray
            << "interpreterVersion" << globalScriptEngine->getInterpreterVersionString()
            << "bits" << ( sizeof( int* ) == 4 ? 32 : 64 );
     result.appendBool( "debug" , debug );
     result.appendNumber("maxBsonObjectSize", BSONObjMaxUserSize);
     return true;
 }
Esempio n. 6
0
 void printShardingVersionInfo( bool out ) {
     if ( out ) {
         cout << "MongoS version " << versionString << " starting: pid=" << getpid() << " port=" << cmdLine.port <<
                 ( sizeof(int*) == 4 ? " 32" : " 64" ) << "-bit host=" << getHostNameCached() << " (--help for usage)" << endl;
         DEV cout << "_DEBUG build" << endl;
         cout << "git version: " << gitVersion() << endl;
         cout <<  "build sys info: " << sysInfo() << endl;
     }
     else {
         log() << "MongoS version " << versionString << " starting: pid=" << getpid() << " port=" << cmdLine.port <<
                 ( sizeof( int* ) == 4 ? " 32" : " 64" ) << "-bit host=" << getHostNameCached() << " (--help for usage)" << endl;
         DEV log() << "_DEBUG build" << endl;
         printGitVersion();
         printSysInfo();
         printCommandLineOpts();
     }
 }
Esempio n. 7
0
        void doUnlockedStuff(stringstream& ss) {
            /* this is in the header already ss << "port:      " << port << '\n'; */
            ss << mongodVersion() << "\n";
            ss << "git hash: " << gitVersion() << "\n";
            ss << "sys info: " << sysInfo() << "\n";
            ss << "\n";
            ss << "dbwritelocked:  " << dbMutex.info().isLocked() << " (initial)\n";
            ss << "uptime:    " << time(0)-started << " seconds\n";
            if ( replAllDead )
                ss << "<b>replication replAllDead=" << replAllDead << "</b>\n";
            ss << "\nassertions:\n";
            for ( int i = 0; i < 4; i++ ) {
                if ( lastAssert[i].isSet() ) {
                    ss << "<b>";
                    if ( i == 3 ) ss << "usererr";
                    else ss << i;
                    ss << "</b>" << ' ' << lastAssert[i].toString();
                }
            }

            ss << "\nreplInfo:  " << replInfo << "\n\n";

            ss << "Clients:\n";
            ss << "<table border=1><tr align='left'><th>Thread</th><th>Current op</th>\n";
            {
                boostlock bl(Client::clientsMutex);
                for( set<Client*>::iterator i = Client::clients.begin(); i != Client::clients.end(); i++ ) { 
                    Client *c = *i;
                    CurOp& co = *(c->curop());
                    ss << "<tr><td>" << c->desc() << "</td><td";
                    BSONObj info = co.infoNoauth();
                    /*
                    if( info.getIntField("inLock") > 0 )
                        ss << "style='color:red'";
                    else if( info.getIntField("inLock") < 0 ) 
                        ss << "style='color:green'";
                        */
                    ss << ">" << info << "</td></tr>\n";
                }
            }
            ss << "</table>\n";
        }
Esempio n. 8
0
 void printShardingVersionInfo( bool out ) {
     if ( out ) {
         std::cout << "MongoS version " << versionString << " starting: pid=" <<
             ProcessId::getCurrent() << " port=" << serverGlobalParams.port <<
             ( sizeof(int*) == 4 ? " 32" : " 64" ) << "-bit host=" << getHostNameCached() <<
             " (--help for usage)" << std::endl;
         DEV std::cout << "_DEBUG build" << std::endl;
         std::cout << "git version: " << gitVersion() << std::endl;
         std::cout << openSSLVersion("OpenSSL version: ") << std::endl;
         std::cout <<  "build sys info: " << sysInfo() << std::endl;
     }
     else {
         log() << "MongoS version " << versionString << " starting: pid=" <<
             ProcessId::getCurrent() << " port=" << serverGlobalParams.port <<
             ( sizeof( int* ) == 4 ? " 32" : " 64" ) << "-bit host=" << getHostNameCached() <<
             " (--help for usage)" << std::endl;
         DEV log() << "_DEBUG build" << std::endl;
         logProcessDetails();
     }
 }
Esempio n. 9
0
 bool run(const string& dbname, BSONObj& jsobj, string& errmsg, BSONObjBuilder& result, bool fromRepl ){
     result << "version" << versionString << "gitVersion" << gitVersion() << "sysInfo" << sysInfo();
     result << "bits" << ( sizeof( int* ) == 4 ? 32 : 64 );
     return true;
 }
Esempio n. 10
0
 void printSysInfo() {
     log() << "build info: " << sysInfo() << endl;
 }
Esempio n. 11
0
 bool run(const string& dbname, BSONObj& jsobj, string& errmsg, BSONObjBuilder& result, bool fromRepl ){
     result << "version" << versionString << "gitVersion" << gitVersion() << "sysInfo" << sysInfo();
     result << "bits" << ( sizeof( int* ) == 4 ? 32 : 64 );
     result.appendBool( "debug" , debug );
     result.appendNumber("maxBsonObjectSize", BSONObjMaxUserSize);
     return true;
 }
Esempio n. 12
0
File: util.cpp Progetto: IlyaM/mongo
 void printSysInfo() { log() << "sys info: " << sysInfo() << endl; }
Esempio n. 13
0
    void printSysInfo() { 
        log() << "sys info: " << sysInfo() << endl; 
#if defined(_DURABLE)
        log() << "_DURABLE defined, but durable is not finished" << endl;
#endif
    }
Esempio n. 14
0
        void doUnlockedStuff(stringstream& ss) {
            /* this is in the header already ss << "port:      " << port << '\n'; */
            ss << mongodVersion() << "\n";
            ss << "git hash: " << gitVersion() << "\n";
            ss << "sys info: " << sysInfo() << "\n";
            ss << "\n";
            ss << "dbwritelocked:  " << dbMutex.info().isLocked() << " (initial)\n";
            ss << "uptime:    " << time(0)-started << " seconds\n";
            if ( replAllDead )
                ss << "<b>replication replAllDead=" << replAllDead << "</b>\n";
            ss << "\nassertions:\n";
            for ( int i = 0; i < 4; i++ ) {
                if ( lastAssert[i].isSet() ) {
                    ss << "<b>";
                    if ( i == 3 ) ss << "usererr";
                    else ss << i;
                    ss << "</b>" << ' ' << lastAssert[i].toString();
                }
            }

            ss << "\nreplInfo:  " << replInfo << "\n\n";

            ss << "Clients:\n";
            ss << "<table border=1>";
            ss << "<tr align='left'>"
               << "<th>Thread</th>" 
             
               << "<th>OpId</th>" 
               << "<th>Active</th>" 
               << "<th>LockType</th>"
               << "<th>Waiting</th>"
               << "<th>SecsRunning</th>"
               << "<th>Op</th>"
               << "<th>NameSpace</th>"
               << "<th>Query</th>"
               << "<th>client</th>"
               << "<th>msg</th>"
               << "<th>progress</th>"

               << "</tr>\n";
            {
                scoped_lock bl(Client::clientsMutex);
                for( set<Client*>::iterator i = Client::clients.begin(); i != Client::clients.end(); i++ ) { 
                    Client *c = *i;
                    CurOp& co = *(c->curop());
                    ss << "<tr><td>" << c->desc() << "</td>";
                    
                    tablecell( ss , co.opNum() );
                    tablecell( ss , co.active() );
                    tablecell( ss , co.getLockType() );
                    tablecell( ss , co.isWaitingForLock() );
                    if ( co.active() )
                        tablecell( ss , co.elapsedSeconds() );
                    else
                        tablecell( ss , "" );
                    tablecell( ss , co.getOp() );
                    tablecell( ss , co.getNS() );
                    if ( co.haveQuery() )
                        tablecell( ss , co.query() );
                    else
                        tablecell( ss , "" );
                    tablecell( ss , co.getRemoteString() );

                    tablecell( ss , co.getMessage() );
                    tablecell( ss , co.getProgressMeter().toString() );


                    ss << "</tr>";
                }
            }
            ss << "</table>\n";
        }