Summary: 45 instances, 43 unique Text Count // TODO: can be more restrict 1 // TODO: validate that the directory component has no glob characters 1 * TODO: If a Truncate/Rename rotation happen while this method is running, 1 // TODO: The following two senders will produce duplicate records and need the tests need to be modified to handle those 3 // TODO: Add metrics? 1 // SANITYCHECK: TODO: Remove when done debugging. 1 // TODO: Skip empty records, commented records, header lines, etc... 1 // TODO: The following two senders will produce duplicate records and the tests need to be modified to handle those 1 // TODO: CWMetricsFactory does not wait for shutdown to 1 // TODO: Use Guava's ServiceManager 1 // TODO: Missing tests for tryTake and the case where the queue was full before the take/tryTake call was made 1 // TODO: time a buffer spends in the queue 1 // FIXME: what do we deal with the field that's missing? 1 * TODO: facility is currently omitted because it varies across platforms 1 // TODO: call #offer, #offerRecord, #offerForRetry and see that record 1 // TODO: Refactor into two classes: FileTailer and FileTailerService, similar to AsyncPublisher and AsyncPublisherService 1 // TODO: get latest checkpoint for this flow 1 // TODO: Remove when done debugging. 1 // TODO: support duplicate records when testing 1 * TODO: this might not be portable as we rely on inner representation of 1 // TODO: Instead of this plethora of abstract getters, consider using 1 // TODO: this does not handle globs in directory component: e.g. /opt/*/logs/app.log, /opt/**/app.log* 1 * TODO: Add tests for thread-safety of implementation. 1 // TODO: uncouple from FirehoseConstants 1 // TODO: wait on #take, then call #close() and see that 1 // TODO: Add metrics for bytes copied between buffers 1 // TODO: wait on #take, then call #offer and see that #take 1 * TODO: The edge case where the new file fills so quickly (within 1 second) 1 // TODO: wait on #take, then call #offerForRetry and see that 1 *