diff --git a/samples/knot.full.conf b/samples/knot.full.conf
index 33c99b5ca10993686fa430e71cbe7fa6972a14e4..1dedc33ebe2e548cb2ea8785fc3735a228a8d46c 100644
--- a/samples/knot.full.conf
+++ b/samples/knot.full.conf
@@ -404,7 +404,7 @@ zones {
 #   notice    - Notices and hints.
 #   warning   - Warnings. An action from the operator may be required.
 #   error     - Recoverable error. Some action should be taken.
-#   fatal     - Non-recoverable errors resulting in server shutdown.
+#   critical  - Non-recoverable errors resulting in server shutdown.
 #               (Not supported yet.)
 #   all       - All severities.
 #
diff --git a/src/common/log.c b/src/common/log.c
index 8f90b177fb7479cb22bcb0384182de5271776af5..63f2703e5bf8f5487805f0b31f32597b06a6a5e0 100644
--- a/src/common/log.c
+++ b/src/common/log.c
@@ -155,7 +155,7 @@ int log_init()
 {
 	/* Setup initial state. */
 	int ret = KNOT_EOK;
-	int emask = LOG_MASK(LOG_WARNING)|LOG_MASK(LOG_ERR)|LOG_MASK(LOG_FATAL);
+	int emask = LOG_MASK(LOG_WARNING)|LOG_MASK(LOG_ERR)|LOG_MASK(LOG_CRIT);
 	int imask = LOG_MASK(LOG_INFO)|LOG_MASK(LOG_NOTICE);
 
 	/* Add debug messages. */
@@ -321,7 +321,7 @@ int log_msg(logsrc_t src, int level, const char *msg, ...)
 	case LOG_NOTICE:  prefix = "[notice] "; break;
 	case LOG_WARNING: prefix = "[warning] "; break;
 	case LOG_ERR:     prefix = "[error] "; break;
-	case LOG_FATAL:   prefix = "[fatal] "; break;
+	case LOG_CRIT:    prefix = "[fatal] "; break;
 	default: break;
 	}
 
diff --git a/src/common/log.h b/src/common/log.h
index 71d60a01f9eb879e4e215afff3e87bb57a313b60..e14159e609e727fb124611d7633446ce1f2af859 100644
--- a/src/common/log.h
+++ b/src/common/log.h
@@ -21,9 +21,9 @@
  * \brief Logging facility.
  *
  * \note Loglevel defined in syslog.h, may be redefined in other backend, but
- * keep naming. LOG_FATAL, LOG_ERR, LOG_WARNING, LOG_NOTICE, LOG_INFO, LOG_DEBUG
+ * keep naming. LOG_CRIT, LOG_ERR, LOG_WARNING, LOG_NOTICE, LOG_INFO, LOG_DEBUG
  *
- * In standard mode, only LOG_FATAL, LOG_ERR and LOG_WARNING is logged.
+ * In standard mode, only LOG_CRIT, LOG_ERR and LOG_WARNING is logged.
  * Verbose mode enables LOG_NOTICE and LOG_INFO for additional information.
  *
  * \addtogroup logging
@@ -59,9 +59,6 @@ typedef enum {
 	LOG_ANY    = 7  /*!< Any module. */
 } logsrc_t;
 
-/*! \brief Severity mapping. */
-#define LOG_FATAL LOG_CRIT /*!< Fatal errors cannot be masked. */
-
 /*! \brief Format for timestamps in log files. */
 #define KNOT_LOG_TIME_FORMAT "%Y-%m-%dT%H:%M:%S"
 
@@ -150,21 +147,21 @@ int log_vmsg(logsrc_t src, int level, const char *msg, va_list ap);
 void hex_log(int source, const char *data, int length);
 
 /* Convenient logging. */
-#define log_server_fatal(msg...)     log_msg(LOG_SERVER, LOG_FATAL, msg)
+#define log_server_fatal(msg...)     log_msg(LOG_SERVER, LOG_CRIT, msg)
 #define log_server_error(msg...)     log_msg(LOG_SERVER, LOG_ERR, msg)
 #define log_server_warning(msg...)   log_msg(LOG_SERVER, LOG_WARNING, msg)
 #define log_server_notice(msg...)    log_msg(LOG_SERVER, LOG_NOTICE, msg)
 #define log_server_info(msg...)      log_msg(LOG_SERVER, LOG_INFO, msg)
 #define log_server_debug(msg...)     log_msg(LOG_SERVER, LOG_DEBUG, msg)
 
-#define log_answer_fatal(msg...)     log_msg(LOG_ANSWER, LOG_FATAL, msg)
+#define log_answer_fatal(msg...)     log_msg(LOG_ANSWER, LOG_CRIT, msg)
 #define log_answer_error(msg...)     log_msg(LOG_ANSWER, LOG_ERR, msg)
 #define log_answer_warning(msg...)   log_msg(LOG_ANSWER, LOG_WARNING, msg)
 #define log_answer_notice(msg...)    log_msg(LOG_ANSWER, LOG_NOTICE, msg)
 #define log_answer_info(msg...)      log_msg(LOG_ANSWER, LOG_INFO, msg)
 #define log_answer_debug(msg...)     log_msg(LOG_ANSWER, LOG_DEBUG, msg)
 
-#define log_zone_fatal(msg...)       log_msg(LOG_ZONE, LOG_FATAL, msg)
+#define log_zone_fatal(msg...)       log_msg(LOG_ZONE, LOG_CRIT, msg)
 #define log_zone_error(msg...)       log_msg(LOG_ZONE, LOG_ERR, msg)
 #define log_zone_warning(msg...)     log_msg(LOG_ZONE, LOG_WARNING, msg)
 #define log_zone_notice(msg...)      log_msg(LOG_ZONE, LOG_NOTICE, msg)
diff --git a/src/knot/conf/cf-lex.l b/src/knot/conf/cf-lex.l
index d813c818d119914d9c5354e29678f6b456ff1f40..4965f6239e07c541bf6d02ea6d7183e5db9227e1 100644
--- a/src/knot/conf/cf-lex.l
+++ b/src/knot/conf/cf-lex.l
@@ -160,6 +160,7 @@ info { lval.t = yytext; lval.i = LOG_MASK(LOG_INFO); return LOG_LEVEL; }
 notice { lval.t = yytext; lval.i = LOG_MASK(LOG_NOTICE); return LOG_LEVEL; }
 warning { lval.t = yytext; lval.i = LOG_MASK(LOG_WARNING); return LOG_LEVEL; }
 error { lval.t = yytext; lval.i = LOG_MASK(LOG_ERR); return LOG_LEVEL; }
+critical { lval.t = yytext; lval.i = LOG_MASK(LOG_CRIT); return LOG_LEVEL; }
 
 increment|unixtime {
   lval.t = yytext;
@@ -327,7 +328,7 @@ hmac-sha512     { lval.alg = KNOT_TSIG_ALG_HMAC_SHA512; return TSIG_ALGO_NAME; }
 
 	// remove optional semicolon
 	if (yytext[yyleng - 1] == ';') {
-		yyleng -= 1; 
+		yyleng -= 1;
 	}
 	// remove quotes
 	yytext += 1;