Lassen Sie mich diesen gesamten Thread umschreiben.Verwalten einer Protokolldatei in Grails
Ich habe eine Web-Anwendung geschrieben mit Grails und läuft auf einer VM, auf der Linux läuft.
Die Webanwendung muss eine separate und unterschiedliche Protokolldatei verwalten, die sehr wichtige Informationen für den Benutzer der Anwendung enthält. Ich möchte nur, dass es Informationen enthält, an die ich schreibe. Nichts anderes, also kann ich Tomcat-Logging usw. nicht verwenden. Ich brauche eine separate Log-Datei, weil der Benutzer der Anwendung nicht schlau genug ist, ein Tomcat-Log zu lesen.
Wenn ich eine Protokolldatei auf dem lokalen Laufwerk C: natürlich funktioniert, wenn ich es in Debug über IntelliJ ausführen, aber sobald ich es aufwarf und es in Tomcat, die nicht mehr funktioniert, und ich bekomme eine ClassNotFoundException .
String myCurrentDate = new Date().format('yyyyMMddhhmm')
def newFile = "C:\\Temp\\MyLogFile-Log-" + myCurrentDate + ".txt.old"
def file = new File('C:\\Temp\\MyLogFile-Log.txt')
file.renameTo(new File(newFile))
file.delete()
Was ist der beste Weg, dies zu tun? Host die Log-Datei auf dem Linux-Rechner? sftp scheint auch nicht die Antwort zu sein. Ich muss in der Lage:
- Auf Antrag Ausführung die alte Protokolldatei umbenennen zu archivieren und löschen dann die alte Protokolldatei
- Schreiben in die Protokolldatei
Wenn ich es auf tun Linux Wie lege ich den Speicherort der Datei fest?
Ich bin derzeit stecken mit Grails 2.2.5, ich nehme an, das ist nicht in dieser Version verfügbar? appender kommt unauflösbar. – Sulteric
siehe http://docs.grails.org/2.2.5/guide/single.html#logging dann. Die Struktur des Konfigurationsabschnitts sieht dem Logback sehr ähnlich. Die Klassennamen müssen natürlich geändert werden – injecteer