Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e443004fd7 | ||
|
|
89f6919d0b | ||
|
|
46b91266d5 | ||
|
|
13cdc1046c | ||
|
|
a7c85ad06d | ||
|
|
444f77d902 |
13
README.md
13
README.md
@@ -1,2 +1,15 @@
|
|||||||
# AutomaticLogDeleter
|
# AutomaticLogDeleter
|
||||||
Deletes old server logs automatically
|
Deletes old server logs automatically
|
||||||
|
# Config
|
||||||
|
```yaml
|
||||||
|
#AutomaticLogDeleter plugin config
|
||||||
|
#lines that start with a hashtag are comments
|
||||||
|
#delete logs older than 24 hours by default
|
||||||
|
#you can set it to -1 to simply delete all logs
|
||||||
|
#default value: 86400
|
||||||
|
delete-logs-older-than-seconds: 86400
|
||||||
|
|
||||||
|
#by default old logs are deleted only on startup
|
||||||
|
#default value: false
|
||||||
|
also-delete-logs-on-shutdown: false
|
||||||
|
```
|
||||||
|
|||||||
@@ -38,16 +38,27 @@ public class AutomaticLogDeleter extends JavaPlugin {
|
|||||||
//maximum file age allowed
|
//maximum file age allowed
|
||||||
|
|
||||||
long maxOldMillis = config.getLong("delete-logs-older-than-seconds") * 1000;
|
long maxOldMillis = config.getLong("delete-logs-older-than-seconds") * 1000;
|
||||||
|
String fileName;
|
||||||
|
|
||||||
for (File file : files) {
|
for (File file : files) {
|
||||||
if (file.isFile()) {
|
if (file.isFile()) {
|
||||||
if ((System.currentTimeMillis() - file.lastModified()) > maxOldMillis) {
|
fileName = file.getName();
|
||||||
|
|
||||||
if (!file.delete()) {
|
//if file is not a log file
|
||||||
Bukkit.getLogger().log(Level.WARNING, "[AutomaticLogDeleter] Failed to delete server log file! Are you sure the file permissions are correct?");
|
//using contains to make it more likely to catch different types of logging systems
|
||||||
} else {
|
if (!fileName.contains(".log") && !fileName.contains("log.")) {
|
||||||
Bukkit.getLogger().log(Level.INFO, "[AutomaticLogDeleter] Deleted log file " + file.getName());
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//if file is older than configured time
|
||||||
|
if ((System.currentTimeMillis() - file.lastModified()) < maxOldMillis) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!file.delete()) {
|
||||||
|
getLogger().log(Level.WARNING, "[AutomaticLogDeleter] Failed to delete server log file! Are you sure the file permissions are correct?");
|
||||||
|
} else {
|
||||||
|
getLogger().log(Level.INFO, "[AutomaticLogDeleter] Deleted log file " + fileName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,3 +11,9 @@ delete-logs-older-than-seconds: 86400
|
|||||||
#default value: false
|
#default value: false
|
||||||
|
|
||||||
also-delete-logs-on-shutdown: false
|
also-delete-logs-on-shutdown: false
|
||||||
|
|
||||||
|
#list of directories to check for logs
|
||||||
|
#note it will only delete files that contain ".log" in their name for safety reasons
|
||||||
|
#not yet implemented
|
||||||
|
check-directories-for-logs:
|
||||||
|
- "logs"
|
||||||
|
|||||||
Reference in New Issue
Block a user