2013-10-10 10 views
6

Wie kann ich das Ausgabeverzeichnis in Google Glog ändern?Protokollierungsverzeichnis in Google Glog ändern

Ich fand nur google::SetLogDestination(google::LogSeverity, const char* path)

versuchte es mit:

google::SetLogDestination(ERROR, "C:\\log\\error.log); 
google::InitGoogleLogging("Test"); 

LOG(ERROR) << "TEST"; 

aber nichts geschrieben!

Btw .: wenn Sie vorschlagen, eine andere leichte, einfach zu bedienen und thread-sichere Bibliothek bitte lassen Sie es mich wissen!

Thx für jede Hilfe!

+0

Sind Sie sicher, dass das Entkommen richtig in diesem Pfad String funktioniert? Was Sie versuchen, das Protokollverzeichnis an der Befehlszeile mit: 'GLOG_log_dir = C: \ log \ error.log./Your_application' – NicholasM

Antwort

8

Sie auch eine der folgenden Möglichkeiten:

Führen Sie das Log-Verzeichnis als Kommandozeilen-Argument, solange Sie die GFlgas Bibliothek installiert sein:

./your_application --log_dir=/some/log/directory 

Wenn Sie es nicht in der Befehlszeile übergeben und stattdessen in der Quelle setzen möchten:

FLAGS_log_dir = "/some/log/directory"; 

Wenn die Google gflags Bibliothek nicht installiert ist, können Sie es als eine Umgebungsvariable:

GLOG_log_dir=/some/log/directory ./your_application 
3

Hier ist der Test, was ich tat, können Sie es versuchen,

#include <glog/logging.h> 

using namespace std; 

int main(int /*argc*/, char** argv) 
{ 
    FLAGS_logtostderr = true; 
    google::SetLogDestination(google::GLOG_INFO,"c:/lovelyGoogle"); 
    google::InitGoogleLogging(argv[0]); 

    LOG(INFO) << "This is INFO"; 
    LOG(WARNING) << "This is WARNING"; 
    LOG(ERROR) << "This is Error"; 

    system("pause"); 
    return 0; 
} 

Getestet unter Visual Studio 2012, Google-glog 0.3.3 auf Windows 7.
Es erzeugt lvoelyGoogle20131016-141423.5160 auf meinem C-Treiber.
Wenn Sie FLAGS_logtostderr = false gesetzt ist, wird die Protokolldatei nicht generiert werden,

Ich glaube, Sie bereits this gelesen haben (na ja, ich habe keinen Kommentar drauf)

Hoffnung dies hilfreich, viel Glück.

PS: Ich habe auf QtCreator (Qt5.1) auch unter Windows7 nichts ausgegeben. Ich habe keine Ahnung, wie ich es jetzt reparieren soll.

+0

Seltsam! Danke trotzdem für deine Hilfe! – leon22

1

Ich benutze diese:

fLS::FLAGS_log_dir = "c:/Documents/logs";