std.logger

String logging facilities for Phobos.

Docu:
http://burner.github.io/phobos/phobos-prerelease/std_logger_core.html
http://burner.github.io/phobos/phobos-prerelease/std_logger_filelogger.html
http://burner.github.io/phobos/phobos-prerelease/std_logger_multilogger.html
http://burner.github.io/phobos/phobos-prerelease/std_logger_nulllogger.html

dub
http://code.dlang.org/packages/logger
You can always allocate the `FileLogger` itself on the stack to force destruction (If having the `File` on the stack was good enough then this should be).  Or put in `scope(exit) logger.file.close();` Or I guess use `RefCounted`.

I'm not sure how important deterministic closing of log files really is though.  I assume writing to the log will take care of flushing, and log files aren't usually created at a rate that will exhaust available handles.