This commit is contained in:
didfet
2015-06-26 18:18:44 +02:00
parent cd42ee14bd
commit 5d54d8ebbd
2 changed files with 28 additions and 19 deletions

View File

@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>logstash-forwarder-java</groupId>
<artifactId>logstash-forwarder-java</artifactId>
<version>0.2.2</version>
<version>0.2.3-SNAPSHOT</version>
<name>logstash-forwarder-java</name>
<description>Java version of logstash forwarder</description>
<url>https://github.com/didfet/logstash-forwarder-java</url>

View File

@@ -70,9 +70,16 @@ public class FileReader extends Reader {
private int readFile(FileState state, int spaceLeftInSpool) {
File file = state.getFile();
long pointer = state.getPointer();
int numberOfEvents = 0;
try {
if(state.isDeleted() || state.getRandomAccessFile() == null) { // Don't try to read this file
pointerMap.put(file, pointer);
return 0;
if(logger.isTraceEnabled()) {
logger.trace("File : " + file + " has been deleted");
}
} else if(state.getRandomAccessFile().length() == 0) {
if(logger.isTraceEnabled()) {
logger.trace("File : " + file + " is empty");
}
} else {
int eventListSizeBefore = eventList.size();
if(logger.isTraceEnabled()) {
@@ -84,9 +91,13 @@ public class FileReader extends Reader {
} else {
pointer = readLines(state, spaceLeftInSpool);
}
pointerMap.put(file, pointer);
return eventList.size() - eventListSizeBefore; // Return number of events read
numberOfEvents = eventList.size() - eventListSizeBefore;
}
} catch(IOException e) {
logger.warn("Exception raised while reading file : " + state.getFile(), e);
}
pointerMap.put(file, pointer);
return numberOfEvents; // Return number of events read
}
private boolean isCompressedFile(FileState state) {
@@ -105,8 +116,7 @@ public class FileReader extends Reader {
}
}
} catch(IOException e) {
logger.warn("Exception raised while reading file : " + state.getFile());
e.printStackTrace();
logger.warn("Exception raised while reading file : " + state.getFile(), e);
}
return false;
}
@@ -129,8 +139,7 @@ public class FileReader extends Reader {
}
reader.seek(pos); // Ensure we can re-read if necessary
} catch(IOException e) {
logger.warn("Exception raised while reading file : " + state.getFile());
e.printStackTrace();
logger.warn("Exception raised while reading file : " + state.getFile(), e);
}
return pos;
}