Limitations
Understanding the Zero-Install tailer and its limitations.
Last updated
Understanding the Zero-Install tailer and its limitations.
Last updated
The Zero-Install tailer uses your web browser's File System API to gain access to a log file you specify on your computer.
As impressive as the Zero-Install tailer is, it operates in quite an inefficient way. For that reason, it is best suited to log files that are smaller than 50 MB, though your mileage my vary depending upon how powerful your computer is.
Once you've provided the file you'd like to be tailed, the browser holds onto a handle for that file (a , specifically). Using that handle, we can then open the file (a ) and read its content.
However, a limitation of the API is that whenever the source file changes - which is going to be very often with a log file - the file has to be re-opened again from the handle.
Once re-opened, there's no way to quickly skip past most of the bytes in the file to the point the tailer had previously reached. As such, the entire file must be read from the beginning each time until it reaches the previous furthest point reached.
Clearly, this isn't a terribly efficient way of working, however it's still convenient and quick to run in most cases, provided you're not streaming extremely large files. The tailing process happens in a Worker, away from the user interface thread to avoid impact on your browsing experience.
will allow you to tail any file regardless of its increasing size.
At present, only Chromium browsers offer the File System API calls required to accomplish tailing a file (and only in a fairly inefficient manner, as outlined above).
It would be great to support Firefox and WebKit-based browsers such as Safari, but this is contingent on API support being available in those browsers.
The specific API calls that aren't supported outside of Chromium are (at the time of writing):