diff --git a/NEWS b/NEWS
index 8857a628d..28c8b1bb8 100644
--- a/NEWS
+++ b/NEWS
@@ -4,6 +4,7 @@ ver 0.16.6 (2010/??/??)
 * encoder:
   - flac, null, wave: fix buffer corruption bug
   - wave: support packed 24 bit samples
+* log: print reason for failure
 * event_pipe: fix WIN32 regression
 * define WINVER in ./configure
 * WIN32: autodetect filesystem encoding
diff --git a/src/log.c b/src/log.c
index 556c8b04f..99a9a8f6d 100644
--- a/src/log.c
+++ b/src/log.c
@@ -139,8 +139,8 @@ log_init_file(const char *path, unsigned line)
 	out_filename = path;
 	out_fd = open_log_file();
 	if (out_fd < 0)
-		MPD_ERROR("problem opening log file \"%s\" (config line %u) "
-			  "for writing\n", path, line);
+		MPD_ERROR("failed to open log file \"%s\" (config line %u): %s",
+			  path, line, g_strerror(errno));
 
 	g_log_set_default_handler(file_log_func, NULL);
 }