Asserts that the given filename can be used as a log file by
ensuring that if the file exists it is a regular file and it is writable.
If the file does not exist, then the directory is checked to see if it is
writable.
An ArgumentError is raised if any of these assertions fail.
Creates a newFileAppender that will use the given filename as
the logging destination. If the file does not already exist it will be
created. If the :truncate option is set to true then the file will
be truncated before writing begins; otherwise, log messages will be appened
to the file.