Use custom Logging methods
(also, code formatting, add final modifiers)
Use copyStream to read file
(Also, increase bufferSize to the value readStream() has used before)