diff --git a/addons/chan_ooh323.c b/addons/chan_ooh323.c
index 8c4ff2c4a670045446a8537975a791fa394b38cd..278c5876f6a0abddda3d6fd4bccb5d22e95eddc4 100644
--- a/addons/chan_ooh323.c
+++ b/addons/chan_ooh323.c
@@ -1174,8 +1174,7 @@ static int ooh323_answer(struct ast_channel *ast)
 				p->alertsent = 1;
 			}
 			ast_setstate(ast, AST_STATE_UP);
-      			if (option_debug)
-				ast_debug(1, "ooh323_answer(%s)\n", ast_channel_name(ast));
+			ast_debug(1, "ooh323_answer(%s)\n", ast_channel_name(ast));
 			ast_channel_unlock(ast);
 			ooAnswerCall(p->callToken);
 		}
diff --git a/apps/app_directory.c b/apps/app_directory.c
index 48533f5920d487cc374dbcf7421314105863fd31..a47fe3b661b50f772b2cb0fd3655a30ca0caad65 100644
--- a/apps/app_directory.c
+++ b/apps/app_directory.c
@@ -815,10 +815,10 @@ static int do_directory(struct ast_channel *chan, struct ast_config *vmcfg, stru
 	/* Sort items */
 	sort_items(sorted, count);
 
-	if (option_debug) {
-		ast_debug(2, "Listing matching entries:\n");
+	if (DEBUG_ATLEAST(2)) {
+		ast_log(LOG_DEBUG, "Listing matching entries:\n");
 		for (ptr = sorted, i = 0; i < count; i++, ptr++) {
-			ast_debug(2, "%s: %s\n", ptr[0]->exten, ptr[0]->name);
+			ast_log(LOG_DEBUG, "%s: %s\n", ptr[0]->exten, ptr[0]->name);
 		}
 	}
 
diff --git a/apps/app_minivm.c b/apps/app_minivm.c
index e9fa2118c64983b7c4cecb9505f154182263c58d..c09fba173af37970b019414bf0b98f3d6476b851 100644
--- a/apps/app_minivm.c
+++ b/apps/app_minivm.c
@@ -1438,7 +1438,7 @@ static int sendmail(struct minivm_template *template, struct minivm_account *vmu
 		ast_debug(1, "Using default subject for this email \n");
 	}
 
-	if (option_debug > 2)
+	if (DEBUG_ATLEAST(3))
 		fprintf(p, "X-Asterisk-debug: template %s user account %s@%s\n", template->name, vmu->username, vmu->domain);
 	fprintf(p, "MIME-Version: 1.0\n");
 
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index 72e3e59c126f9d98eebf032cced20e9e8d5596ab..87f482dce0291a97b6df4b1b965235233cbaa0f2 100644
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -3657,7 +3657,7 @@ static void set_update(MAILSTREAM * stream)
 	char buf[1024] = "";
 
 	if (!(user = get_user_by_mailbox(mailbox, buf, sizeof(buf))) || !(vms = get_vm_state_by_imapuser(user, 0))) {
-		if (user && option_debug > 2)
+		if (user && DEBUG_ATLEAST(3))
 			ast_log(AST_LOG_WARNING, "User %s mailbox not found for update.\n", user);
 		return;
 	}
diff --git a/cdr/cdr_pgsql.c b/cdr/cdr_pgsql.c
index b482fe6c8408e8905d1ddab19cc4a722f6a576e5..3af9b4b3b2b6cb399dcfe7bea580013e67d8270a 100644
--- a/cdr/cdr_pgsql.c
+++ b/cdr/cdr_pgsql.c
@@ -644,20 +644,20 @@ static int config_module(int reload)
 		return -1;
 	}
 
-	if (option_debug) {
+	if (DEBUG_ATLEAST(1)) {
 		if (ast_strlen_zero(pghostname)) {
-			ast_debug(1, "using default unix socket\n");
+			ast_log(LOG_DEBUG, "using default unix socket\n");
 		} else {
-			ast_debug(1, "got hostname of %s\n", pghostname);
+			ast_log(LOG_DEBUG, "got hostname of %s\n", pghostname);
 		}
-		ast_debug(1, "got port of %s\n", pgdbport);
-		ast_debug(1, "got user of %s\n", pgdbuser);
-		ast_debug(1, "got dbname of %s\n", pgdbname);
-		ast_debug(1, "got password of %s\n", pgpassword);
-		ast_debug(1, "got application name of %s\n", pgappname);
-		ast_debug(1, "got sql table name of %s\n", table);
-		ast_debug(1, "got encoding of %s\n", encoding);
-		ast_debug(1, "got timezone of %s\n", tz);
+		ast_log(LOG_DEBUG, "got port of %s\n", pgdbport);
+		ast_log(LOG_DEBUG, "got user of %s\n", pgdbuser);
+		ast_log(LOG_DEBUG, "got dbname of %s\n", pgdbname);
+		ast_log(LOG_DEBUG, "got password of %s\n", pgpassword);
+		ast_log(LOG_DEBUG, "got application name of %s\n", pgappname);
+		ast_log(LOG_DEBUG, "got sql table name of %s\n", table);
+		ast_log(LOG_DEBUG, "got encoding of %s\n", encoding);
+		ast_log(LOG_DEBUG, "got timezone of %s\n", tz);
 	}
 
 	pgsql_reconnect();
diff --git a/cel/cel_pgsql.c b/cel/cel_pgsql.c
index 5fe66784bb47e1df3a863881a952fb7e6e3705cf..eb8f5d83652fa85ab3afa5255e591ea670b0c49e 100644
--- a/cel/cel_pgsql.c
+++ b/cel/cel_pgsql.c
@@ -556,18 +556,18 @@ static int process_my_load_module(struct ast_config *cfg)
 		ast_log(LOG_WARNING,"PostgreSQL Ran out of memory copying schema info\n");
 		return AST_MODULE_LOAD_DECLINE;
 	}
-	if (option_debug) {
+	if (DEBUG_ATLEAST(3)) {
 		if (ast_strlen_zero(pghostname)) {
-			ast_debug(3, "cel_pgsql: using default unix socket\n");
+			ast_log(LOG_DEBUG, "cel_pgsql: using default unix socket\n");
 		} else {
-			ast_debug(3, "cel_pgsql: got hostname of %s\n", pghostname);
+			ast_log(LOG_DEBUG, "cel_pgsql: got hostname of %s\n", pghostname);
 		}
-		ast_debug(3, "cel_pgsql: got port of %s\n", pgdbport);
-		ast_debug(3, "cel_pgsql: got user of %s\n", pgdbuser);
-		ast_debug(3, "cel_pgsql: got dbname of %s\n", pgdbname);
-		ast_debug(3, "cel_pgsql: got password of %s\n", pgpassword);
-		ast_debug(3, "cel_pgsql: got sql table name of %s\n", table);
-		ast_debug(3, "cel_pgsql: got show_user_defined of %s\n",
+		ast_log(LOG_DEBUG, "cel_pgsql: got port of %s\n", pgdbport);
+		ast_log(LOG_DEBUG, "cel_pgsql: got user of %s\n", pgdbuser);
+		ast_log(LOG_DEBUG, "cel_pgsql: got dbname of %s\n", pgdbname);
+		ast_log(LOG_DEBUG, "cel_pgsql: got password of %s\n", pgpassword);
+		ast_log(LOG_DEBUG, "cel_pgsql: got sql table name of %s\n", table);
+		ast_log(LOG_DEBUG, "cel_pgsql: got show_user_defined of %s\n",
 			cel_show_user_def ? "Yes" : "No");
 	}
 
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c
index de2c1527903f094ef717bfa0f548eaeaf842dacc..0579a5a36dba9b3c1dea444ded4acc77ac5bb6da 100644
--- a/channels/chan_dahdi.c
+++ b/channels/chan_dahdi.c
@@ -15058,14 +15058,14 @@ retry:
 		ast_mutex_lock(&p->lock);
 		if (p->owner && !p->restartpending) {
 			if (ast_channel_trylock(p->owner)) {
-				if (option_debug > 2)
+				if (DEBUG_ATLEAST(3))
 					ast_verbose("Avoiding deadlock\n");
 				/* Avoid deadlock since you're not supposed to lock iflock or pvt before a channel */
 				ast_mutex_unlock(&p->lock);
 				ast_mutex_unlock(&iflock);
 				goto retry;
 			}
-			if (option_debug > 2)
+			if (DEBUG_ATLEAST(3))
 				ast_verbose("Softhanging up on %s\n", ast_channel_name(p->owner));
 			ast_softhangup_nolock(p->owner, AST_SOFTHANGUP_EXPLICIT);
 			p->restartpending = 1;
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 85701634cafd02d639805152814026d5e439a879..12d745b4159d278eb344f3507431ce5c4b9607b0 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -22475,7 +22475,7 @@ static void sip_dump_history(struct sip_pvt *dialog)
 		return;
 	}
 
-	if (!option_debug && !sipdebug) {
+	if (!sipdebug && !DEBUG_ATLEAST(1)) {
 		if (!errmsg) {
 			ast_log(LOG_NOTICE, "You must have debugging enabled (SIP or Asterisk) in order to dump SIP history.\n");
 			errmsg = 1;
@@ -22483,20 +22483,20 @@ static void sip_dump_history(struct sip_pvt *dialog)
 		return;
 	}
 
-	ast_debug(1, "\n---------- SIP HISTORY for '%s' \n", dialog->callid);
+	ast_log(LOG_DEBUG, "\n---------- SIP HISTORY for '%s' \n", dialog->callid);
 	if (dialog->subscribed) {
-		ast_debug(1, "  * Subscription\n");
+		ast_log(LOG_DEBUG, "  * Subscription\n");
 	} else {
-		ast_debug(1, "  * SIP Call\n");
+		ast_log(LOG_DEBUG, "  * SIP Call\n");
 	}
 	if (dialog->history) {
 		AST_LIST_TRAVERSE(dialog->history, hist, list)
-			ast_debug(1, "  %-3.3d. %s\n", ++x, hist->event);
+			ast_log(LOG_DEBUG, "  %-3.3d. %s\n", ++x, hist->event);
 	}
 	if (!x) {
-		ast_debug(1, "Call '%s' has no history\n", dialog->callid);
+		ast_log(LOG_DEBUG, "Call '%s' has no history\n", dialog->callid);
 	}
-	ast_debug(1, "\n---------- END SIP HISTORY for '%s' \n", dialog->callid);
+	ast_log(LOG_DEBUG, "\n---------- END SIP HISTORY for '%s' \n", dialog->callid);
 }
 
 
diff --git a/main/callerid.c b/main/callerid.c
index d6f8575fb2838000bef7a098631b6edc06cf3f3e..6c4e5cf04d81e0077c405ab8a472bcb3fc57e8f8 100644
--- a/main/callerid.c
+++ b/main/callerid.c
@@ -501,7 +501,7 @@ int callerid_feed_jp(struct callerid_state *cid, unsigned char *ubuf, int len, s
 						case 0x06: /* short dial number */
 						case 0x07: /* reserved */
 						default:   /* reserved */
-							if (option_debug > 1)
+							if (DEBUG_ATLEAST(2))
 								ast_log(LOG_NOTICE, "did info:#1=%X\n", (unsigned)cid->rawdata[x]);
 							break ;
 						}
diff --git a/main/config.c b/main/config.c
index 8107fce04235a89a429822f3046934f12dbfeddc..38192ed2523e4161678453f4e8fc3c751dafa43b 100644
--- a/main/config.c
+++ b/main/config.c
@@ -2785,9 +2785,7 @@ int ast_config_text_file_save2(const char *configfile, const struct ast_config *
 			}
 			cat = cat->next;
 		}
-		if (!option_debug) {
-			ast_verb(2, "Saving '%s': saved\n", fn);
-		}
+		ast_verb(2, "Saving '%s': saved\n", fn);
 	} else {
 		ast_debug(1, "Unable to open for writing: %s\n", fn);
 		ast_verb(2, "Unable to write '%s' (%s)\n", fn, strerror(errno));
diff --git a/main/netsock2.c b/main/netsock2.c
index ef74ab92bf303ef20554a838dd732f1e9b7259ab..fedbd94a04b5cd662782bb70fab489335bf0dba7 100644
--- a/main/netsock2.c
+++ b/main/netsock2.c
@@ -443,7 +443,7 @@ uint16_t _ast_sockaddr_port(const struct ast_sockaddr *addr, const char *file, i
 		&& addr->ss.ss_family == AF_INET6) {
 		return ntohs(((struct sockaddr_in6 *)&addr->ss)->sin6_port);
 	}
-	if (option_debug >= 1) {
+	if (DEBUG_ATLEAST(1)) {
 		ast_log(__LOG_DEBUG, file, line, func, "Not an IPv4 nor IPv6 address, cannot get port.\n");
 	}
 	return 0;
@@ -461,7 +461,7 @@ void _ast_sockaddr_set_port(struct ast_sockaddr *addr, uint16_t port, const char
 	} else if (addr->len == sizeof(struct sockaddr_in6)
 		&& addr->ss.ss_family == AF_INET6) {
 		((struct sockaddr_in6 *)&addr->ss)->sin6_port = htons(port);
-	} else if (option_debug >= 1) {
+	} else if (DEBUG_ATLEAST(1)) {
 		ast_log(__LOG_DEBUG, file, line, func,
 			"Not an IPv4 nor IPv6 address, cannot set port.\n");
 	}
@@ -657,7 +657,7 @@ int _ast_sockaddr_to_sin(const struct ast_sockaddr *addr,
 		return 0;
 	}
 
-	if (addr->ss.ss_family != AF_INET && option_debug >= 1) {
+	if (addr->ss.ss_family != AF_INET && DEBUG_ATLEAST(1)) {
 		ast_log(__LOG_DEBUG, file, line, func, "Address family is not AF_INET\n");
 	}
 
@@ -670,7 +670,7 @@ void _ast_sockaddr_from_sin(struct ast_sockaddr *addr, const struct sockaddr_in
 {
 	memcpy(&addr->ss, sin, sizeof(*sin));
 
-	if (addr->ss.ss_family != AF_INET && option_debug >= 1) {
+	if (addr->ss.ss_family != AF_INET && DEBUG_ATLEAST(1)) {
 		ast_log(__LOG_DEBUG, file, line, func, "Address family is not AF_INET\n");
 	}
 
diff --git a/main/pbx.c b/main/pbx.c
index 942c15c0522a16629941f09192cfc1adb40f8cb9..70e72fe432d463bf5e7a8efc68238ea20242d0f8 100644
--- a/main/pbx.c
+++ b/main/pbx.c
@@ -7508,13 +7508,13 @@ static int ast_add_extension2_lockopt(struct ast_context *con,
 			ast_add_hint(tmp);
 		}
 	}
-	if (option_debug) {
+	if (DEBUG_ATLEAST(1)) {
 		if (tmp->matchcid == AST_EXT_MATCHCID_ON) {
-			ast_debug(1, "Added extension '%s' priority %d (CID match '%s') to %s (%p)\n",
-					  tmp->name, tmp->priority, tmp->cidmatch_display, con->name, con);
+			ast_log(LOG_DEBUG, "Added extension '%s' priority %d (CID match '%s') to %s (%p)\n",
+				tmp->name, tmp->priority, tmp->cidmatch_display, con->name, con);
 		} else {
-			ast_debug(1, "Added extension '%s' priority %d to %s (%p)\n",
-					  tmp->name, tmp->priority, con->name, con);
+			ast_log(LOG_DEBUG, "Added extension '%s' priority %d to %s (%p)\n",
+				tmp->name, tmp->priority, con->name, con);
 		}
 	}
 
diff --git a/main/sched.c b/main/sched.c
index a4ca260c624ece6f92b53889c9083ae407813290..d8afc74e63e53a27b0da6b49b74bcd5c17840bc0 100644
--- a/main/sched.c
+++ b/main/sched.c
@@ -31,10 +31,7 @@
 #include "asterisk.h"
 
 #ifdef DEBUG_SCHEDULER
-#define DEBUG(a) do { \
-	if (option_debug) \
-		DEBUG_M(a) \
-	} while (0)
+#define DEBUG(a) a
 #else
 #define DEBUG(a)
 #endif
@@ -548,8 +545,7 @@ int ast_sched_add_variable(struct ast_sched_context *con, int when, ast_sched_cb
 	}
 #ifdef DUMP_SCHEDULER
 	/* Dump contents of the context while we have the lock so nothing gets screwed up by accident. */
-	if (option_debug)
-		ast_sched_dump(con);
+	ast_sched_dump(con);
 #endif
 	if (con->sched_thread) {
 		ast_cond_signal(&con->sched_thread->cond);
@@ -649,8 +645,7 @@ int _ast_sched_del(struct ast_sched_context *con, int id, const char *file, int
 
 #ifdef DUMP_SCHEDULER
 	/* Dump contents of the context while we have the lock so nothing gets screwed up by accident. */
-	if (option_debug)
-		ast_sched_dump(con);
+	ast_sched_dump(con);
 #endif
 	if (con->sched_thread) {
 		ast_cond_signal(&con->sched_thread->cond);
@@ -711,25 +706,33 @@ void ast_sched_report(struct ast_sched_context *con, struct ast_str **buf, struc
 void ast_sched_dump(struct ast_sched_context *con)
 {
 	struct sched *q;
-	struct timeval when = ast_tvnow();
+	struct timeval when;
 	int x;
 	size_t heap_size;
+
+	if (!DEBUG_ATLEAST(1)) {
+		return;
+	}
+
+	when = ast_tvnow();
 #ifdef SCHED_MAX_CACHE
-	ast_debug(1, "Asterisk Schedule Dump (%zu in Q, %u Total, %u Cache, %u high-water)\n", ast_heap_size(con->sched_heap), con->eventcnt - 1, con->schedccnt, con->highwater);
+	ast_log(LOG_DEBUG, "Asterisk Schedule Dump (%zu in Q, %u Total, %u Cache, %u high-water)\n",
+		ast_heap_size(con->sched_heap), con->eventcnt - 1, con->schedccnt, con->highwater);
 #else
-	ast_debug(1, "Asterisk Schedule Dump (%zu in Q, %u Total, %u high-water)\n", ast_heap_size(con->sched_heap), con->eventcnt - 1, con->highwater);
+	ast_log(LOG_DEBUG, "Asterisk Schedule Dump (%zu in Q, %u Total, %u high-water)\n",
+		ast_heap_size(con->sched_heap), con->eventcnt - 1, con->highwater);
 #endif
 
-	ast_debug(1, "=============================================================\n");
-	ast_debug(1, "|ID    Callback          Data              Time  (sec:ms)   |\n");
-	ast_debug(1, "+-----+-----------------+-----------------+-----------------+\n");
+	ast_log(LOG_DEBUG, "=============================================================\n");
+	ast_log(LOG_DEBUG, "|ID    Callback          Data              Time  (sec:ms)   |\n");
+	ast_log(LOG_DEBUG, "+-----+-----------------+-----------------+-----------------+\n");
 	ast_mutex_lock(&con->lock);
 	heap_size = ast_heap_size(con->sched_heap);
 	for (x = 1; x <= heap_size; x++) {
 		struct timeval delta;
 		q = ast_heap_peek(con->sched_heap, x);
 		delta = ast_tvsub(q->when, when);
-		ast_debug(1, "|%.4d | %-15p | %-15p | %.6ld : %.6ld |\n",
+		ast_log(LOG_DEBUG, "|%.4d | %-15p | %-15p | %.6ld : %.6ld |\n",
 			q->sched_id->id,
 			q->callback,
 			q->data,
@@ -737,7 +740,7 @@ void ast_sched_dump(struct ast_sched_context *con)
 			(long int)delta.tv_usec);
 	}
 	ast_mutex_unlock(&con->lock);
-	ast_debug(1, "=============================================================\n");
+	ast_log(LOG_DEBUG, "=============================================================\n");
 }
 
 /*! \brief
diff --git a/res/res_config_ldap.c b/res/res_config_ldap.c
index 10265c93d5f062a41ceb798ef90ce894ccebd623..15d9ec018bff9d2938e7baff8f24a229f979aa75 100644
--- a/res/res_config_ldap.c
+++ b/res/res_config_ldap.c
@@ -548,11 +548,11 @@ static struct ast_variable **realtime_ldap_result_to_vars(struct ldap_table_conf
 			} /*!< while (ldap_attribute_name) */
 			ber_free(ber, 0);
 			if (static_table_config == table_config) {
-				if (option_debug > 2) {
+				if (DEBUG_ATLEAST(3)) {
 					const struct ast_variable *tmpdebug = variable_named(var, "variable_name");
 					const struct ast_variable *tmpdebug2 = variable_named(var, "variable_value");
 					if (tmpdebug && tmpdebug2) {
-						ast_debug(3, "Added to vars - %s = %s\n", tmpdebug->value, tmpdebug2->value);
+						ast_log(LOG_DEBUG, "Added to vars - %s = %s\n", tmpdebug->value, tmpdebug2->value);
 					}
 				}
 				vars[entry_index++] = var;
@@ -1618,14 +1618,14 @@ static int update2_ldap(const char *basedn, const char *table_name, const struct
 
 	/* Ready to update */
 	ast_debug(3, "Modifying %zu matched entries\n", entry_count);
-	if (option_debug > 2) {
+	if (DEBUG_ATLEAST(3)) {
 		size_t i;
 		for (i = 0; modifications[i]; i++) {
 			if (modifications[i]->mod_op != LDAP_MOD_DELETE) {
-				ast_debug(3, "%s => %s\n", modifications[i]->mod_type,
-						modifications[i]->mod_values[0]);
+				ast_log(LOG_DEBUG, "%s => %s\n", modifications[i]->mod_type,
+					modifications[i]->mod_values[0]);
 			} else {
-				ast_debug(3, "deleting %s\n", modifications[i]->mod_type);
+				ast_log(LOG_DEBUG, "deleting %s\n", modifications[i]->mod_type);
 			}
 		}
 	}
diff --git a/res/res_config_pgsql.c b/res/res_config_pgsql.c
index cee4e488df95797197ccf4537c77ae309f0603c6..c259b30c1a8cb4b4c064bbea5024fb473d1777e8 100644
--- a/res/res_config_pgsql.c
+++ b/res/res_config_pgsql.c
@@ -1528,16 +1528,16 @@ static int parse_config(int is_reload)
 
 	ast_config_destroy(config);
 
-	if (option_debug) {
+	if (DEBUG_ATLEAST(1)) {
 		if (!ast_strlen_zero(dbhost)) {
-			ast_debug(1, "PostgreSQL RealTime Host: %s\n", dbhost);
-			ast_debug(1, "PostgreSQL RealTime Port: %i\n", dbport);
+			ast_log(LOG_DEBUG, "PostgreSQL RealTime Host: %s\n", dbhost);
+			ast_log(LOG_DEBUG, "PostgreSQL RealTime Port: %i\n", dbport);
 		} else {
-			ast_debug(1, "PostgreSQL RealTime Socket: %s\n", dbsock);
+			ast_log(LOG_DEBUG, "PostgreSQL RealTime Socket: %s\n", dbsock);
 		}
-		ast_debug(1, "PostgreSQL RealTime User: %s\n", dbuser);
-		ast_debug(1, "PostgreSQL RealTime Password: %s\n", dbpass);
-		ast_debug(1, "PostgreSQL RealTime DBName: %s\n", dbname);
+		ast_log(LOG_DEBUG, "PostgreSQL RealTime User: %s\n", dbuser);
+		ast_log(LOG_DEBUG, "PostgreSQL RealTime Password: %s\n", dbpass);
+		ast_log(LOG_DEBUG, "PostgreSQL RealTime DBName: %s\n", dbname);
 	}
 
 	if (!pgsql_reconnect(NULL)) {
diff --git a/res/res_rtp_asterisk.c b/res/res_rtp_asterisk.c
index b53b38ad799dfbe6ccf4a8d35d632a0f9e05527e..d0e48240569e7278cf44267fe9f019a6b623e1b4 100644
--- a/res/res_rtp_asterisk.c
+++ b/res/res_rtp_asterisk.c
@@ -4565,11 +4565,9 @@ static int ast_rtp_write(struct ast_rtp_instance *instance, struct ast_frame *fr
 	format = frame->subclass.format;
 	if (ast_format_cmp(rtp->lasttxformat, format) == AST_FORMAT_CMP_NOT_EQUAL) {
 		/* Oh dear, if the format changed we will have to set up a new smoother */
-		if (option_debug > 0) {
-			ast_debug(1, "Ooh, format changed from %s to %s\n",
-				ast_format_get_name(rtp->lasttxformat),
-				ast_format_get_name(frame->subclass.format));
-		}
+		ast_debug(1, "Ooh, format changed from %s to %s\n",
+			ast_format_get_name(rtp->lasttxformat),
+			ast_format_get_name(frame->subclass.format));
 		ao2_replace(rtp->lasttxformat, format);
 		if (rtp->smoother) {
 			ast_smoother_free(rtp->smoother);
@@ -5744,7 +5742,7 @@ static int bridge_p2p_rtp_write(struct ast_rtp_instance *instance,
 				ast_sockaddr_stringify(&remote_address),
 				strerror(errno));
 		} else if (((ast_test_flag(bridged, FLAG_NAT_ACTIVE) == FLAG_NAT_INACTIVE) || rtpdebug) && !ast_test_flag(bridged, FLAG_NAT_INACTIVE_NOWARN)) {
-			if (option_debug || rtpdebug) {
+			if (rtpdebug || DEBUG_ATLEAST(1)) {
 				ast_log(LOG_WARNING,
 					"RTP NAT: Can't write RTP to private "
 					"address %s, waiting for other end to "
@@ -6117,13 +6115,14 @@ static struct ast_frame *ast_rtp_read(struct ast_rtp_instance *instance, int rtc
 	if (ext) {
 		hdrlen += (ntohl(rtpheader[hdrlen/4]) & 0xffff) << 2;
 		hdrlen += 4;
-		if (option_debug) {
+		if (DEBUG_ATLEAST(1)) {
 			unsigned int profile;
 			profile = (ntohl(rtpheader[3]) & 0xffff0000) >> 16;
-			if (profile == 0x505a)
-				ast_debug(1, "Found Zfone extension in RTP stream - zrtp - not supported.\n");
-			else
-				ast_debug(1, "Found unknown RTP Extensions %x\n", profile);
+			if (profile == 0x505a) {
+				ast_log(LOG_DEBUG, "Found Zfone extension in RTP stream - zrtp - not supported.\n");
+			} else {
+				ast_log(LOG_DEBUG, "Found unknown RTP Extensions %x\n", profile);
+			}
 		}
 	}