Skip to content

Commit 0fafd34

Browse files
committed
support option dont-parse-log in log-forward section
Signed-off-by: Vincent Gramer <vgramer@haproxy.com>
1 parent a53cc11 commit 0fafd34

11 files changed

Lines changed: 44 additions & 2 deletions

File tree

config-parser/section-parsers.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -977,6 +977,7 @@ func (p *configParser) getLogForwardParser() *Parsers {
977977
addParser(parser, &sequence, &parsers.Bind{})
978978
addParser(parser, &sequence, &parsers.Log{})
979979
addParser(parser, &sequence, &simple.Option{Name: "assume-rfc6587-ntf"})
980+
addParser(parser, &sequence, &simple.Option{Name: "dont-parse-log"})
980981
addParser(parser, &sequence, &simple.Number{Name: "backlog"})
981982
addParser(parser, &sequence, &simple.Number{Name: "maxconn"})
982983
addParser(parser, &sequence, &simple.Timeout{Name: "client"})

config-parser/tests/configs/haproxy.cfg.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,7 @@ traces
189189
190190
log-forward
191191
option assume-rfc6587-ntf
192+
option dont-parse-log
192193
193194
crt-store tpm2
194195
crt-base /c

configuration/log_forward.go

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,15 @@ func ParseLogForward(p parser.Parser, lf *models.LogForward) error {
109109
lf.AssumeRfc6587Ntf = true
110110
}
111111

112+
// get option dont-parse-log
113+
_, err = p.Get(parser.LogForward, lf.Name, "option dont-parse-log", false)
114+
if err != nil && !errors.Is(err, parsererrors.ErrFetch) {
115+
return err
116+
}
117+
if err == nil {
118+
lf.DontParseLog = true
119+
}
120+
112121
backlog, err := p.Get(parser.LogForward, lf.Name, "backlog", false)
113122
if err != nil && !errors.Is(err, parsererrors.ErrFetch) {
114123
return err
@@ -272,5 +281,13 @@ func SerializeLogForwardSection(p parser.Parser, data *models.LogForward, opt *o
272281
return err
273282
}
274283

284+
var dontParseLogOption common.ParserData
285+
if data.DontParseLog {
286+
dontParseLogOption = types.SimpleOption{}
287+
}
288+
if err = p.Set(parser.LogForward, data.Name, "option dont-parse-log", dontParseLogOption); err != nil {
289+
return err
290+
}
291+
275292
return err
276293
}

models/log_forward_base.go

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

models/log_forward_base_compare.go

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

models/log_forward_base_compare_test.go

Lines changed: 4 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

specification/build/haproxy_spec.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4194,6 +4194,9 @@ definitions:
41944194
backlog:
41954195
type: integer
41964196
x-nullable: true
4197+
dont-parse-log:
4198+
type: boolean
4199+
x-display-name: Don't Parse Log
41974200
maxconn:
41984201
type: integer
41994202
x-nullable: true

specification/models/configuration/log_forward.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@ log_forward_base:
3030
assume-rfc6587-ntf:
3131
type: boolean
3232
x-display-name: Assume RFC-6587 Non-Transparent Framing
33+
dont-parse-log:
34+
type: boolean
35+
x-display-name: Don't Parse Log
3336
backlog:
3437
type: integer
3538
x-nullable: true

test/configuration_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -968,6 +968,7 @@ ring myring
968968
969969
log-forward sylog-loadb
970970
option assume-rfc6587-ntf
971+
option dont-parse-log
971972
dgram-bind 127.0.0.1:1514 transparent name webserv
972973
bind 127.0.0.1:1514
973974
backlog 10

test/expected/structured.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3016,6 +3016,7 @@
30163016
"log_forwards": {
30173017
"sylog-loadb": {
30183018
"assume-rfc6587-ntf": true,
3019+
"dont-parse-log": true,
30193020
"backlog": 10,
30203021
"maxconn": 1000,
30213022
"name": "sylog-loadb",

0 commit comments

Comments
 (0)