diff --git a/doc/SPOE.txt b/doc/SPOE.txt
index 36e174e..9583d69 100644
--- a/doc/SPOE.txt
+++ b/doc/SPOE.txt
@@ -172,6 +172,7 @@
     - max-waiting-frames
     - messages
     - [no] option async
+    - [no] option dontlog-normal
     - [no] option pipelining
     - [no] option send-frag-payload
     - option continue-on-error
@@ -260,6 +261,16 @@
   When set, this option bypass this behaviour and only the current event will
   be ignored.
 
+
+option dontlog-normal
+no option dontlog-normal
+  Enable or disable logging of normal, successful processing.
+
+  Arguments : none
+
+  See also: "log" and section 4 about logging.
+
+
 option force-set-var
   By default, SPOE filter only register already known variables (mainly from
   parsing of the configuration). If you want that haproxy trusts the agent and
diff --git a/src/flt_spoe.c b/src/flt_spoe.c
index 0706634..abd96cc 100644
--- a/src/flt_spoe.c
+++ b/src/flt_spoe.c
@@ -94,6 +94,10 @@
 /* list of log servers used during the parsing */
 struct list curlogsrvs;
 
+/* agent's proxy flags (PR_O_* and PR_O2_*) used during parsing */
+int curpxopts;
+int curpxopts2;
+
 /* Pools used to allocate SPOE structs */
 static struct pool_head *pool_head_spoe_ctx = NULL;
 static struct pool_head *pool_head_spoe_appctx = NULL;
@@ -3461,6 +3465,14 @@
 				curagent->flags |= SPOE_FL_SND_FRAGMENTATION;
 			goto out;
 		}
+		else if (!strcmp(args[1], "dontlog-normal")) {
+			if (alertif_too_many_args(1, file, linenum, args, &err_code))
+				goto out;
+			if (kwm == 1)
+				curpxopts2 &= ~PR_O2_NOLOGNORM;
+			else
+				curpxopts2 |= PR_O2_NOLOGNORM;
+		}
 
 		/* Following options does not support negation */
 		if (kwm == 1) {
@@ -3983,6 +3995,8 @@
 	LIST_INIT(&curgphs);
 	LIST_INIT(&curvars);
 	LIST_INIT(&curlogsrvs);
+	curpxopts  = 0;
+	curpxopts2 = 0;
 
 	conf = calloc(1, sizeof(*conf));
 	if (conf == NULL) {
@@ -4306,6 +4320,8 @@
         init_new_proxy(&conf->agent_fe);
 	conf->agent_fe.id        = conf->agent->id;
 	conf->agent_fe.parent    = conf->agent;
+	conf->agent_fe.options  |= curpxopts;
+	conf->agent_fe.options2 |= curpxopts2;
 
 	list_for_each_entry_safe(logsrv, logsrvback, &curlogsrvs, list) {
 		LIST_DEL(&logsrv->list);
