2016-05-24 16 views
0

Ich benutze Hockeyapp für Absturzberichte und das Sammeln von Logs, wenn die App abstürzt. Mit der folgenden Methode.Wie man keine Logs in der Xcode-Ausgabe anzeigt, aber trotzdem an Hockeyapp-Berichte sendet

- (void)setupLumberjack { 
    // Configure CocoaLumberjack 
    [DDLog addLogger:[DDASLLogger sharedInstance]]; 
    [DDLog addLogger:[DDTTYLogger sharedInstance]]; 

    // Initialize File Logger 
    // initialize before HockeySDK, so the delegate can access the file logger! 
    _fileLogger = [[DDFileLogger alloc] init]; 
    _fileLogger.maximumFileSize = (1024 * 128); // 128 KByte 
    _fileLogger.logFileManager.maximumNumberOfLogFiles = 5; 
    [_fileLogger rollLogFileWithCompletionBlock:nil]; 
    [DDLog addLogger:_fileLogger]; 
} 

Einstellung der Protokollebene:

static const int ddLogLevel = LOG_LEVEL_ALL;

Jetzt würde Ich mag alle Log-Level noch zu Hockeyapp berichtet geschickt bekommen, aber surpress ANY Ausgang in der Xcode-Konsole.

Wie kann ich das erreichen? Vermutlich fehlt hier etwas.

Verwenden von Version 1.9.2 aber bereit, auf 2.x zu aktualisieren, wenn das erforderlich wäre.

+1

Haben Sie versucht gerade hinzufügen, nicht 'DDTTYLogger'? Klingt so, als ob du genau das willst. –

+0

Genau das, was ich gesucht habe. Vielen Dank! – digitaljerry

Antwort

1

Xcode-Protokolle werden immer in der Xcode-Konsole angezeigt.
Sie haben keine Möglichkeit, sie zu deaktivieren.

Aber man kann das Ausgabefenster verbergen: P

Sie können auch einen benutzerdefinierten Compiler-Flags für Ihre Debug-Build-Einstellungen festgelegt.

enter image description here

Dann kodieren Sie eine DLog() Makro, das NSLog() nur, wenn dieses Flag dort wird Echo ist => nur, wenn sie mit Xcode debuggen.
Damit haben die Benutzer keine Anmeldung an ihrem Gerät.

+0

Lol :) Ok, lassen Sie mich das umformulieren. Ich möchte nicht, dass alle meine wertvollen Logs für andere über Xcode-> Devices-> Device Console sichtbar sind. – digitaljerry

+0

Meine Antwort wurde aktualisiert –

0

Die Antwort, die ich suchte, wurde in einem comment veröffentlicht.

einfach entfernen Sie diese Zeile der Trick: [DDLog addLogger:[DDTTYLogger sharedInstance]];