Skip to content

Commit ec52595

Browse files
authored
Allow fields with ip_range datatype (#26444)
This updates libbeat to support fields with ip_range type. See https://www.elastic.co/guide/en/elasticsearch/reference/master/range.html
1 parent a6d8cdb commit ec52595

4 files changed

Lines changed: 9 additions & 1 deletion

File tree

libbeat/kibana/fields_transformer.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -293,6 +293,7 @@ var (
293293
"geo_point": "geo_point",
294294
"date": "date",
295295
"ip": "ip",
296+
"ip_range": "ip_range",
296297
"boolean": "boolean",
297298
}
298299
)

libbeat/kibana/fields_transformer_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,8 @@ func TestTransformTypes(t *testing.T) {
205205
{commonField: mapping.Field{Type: "string"}, expected: nil},
206206
{commonField: mapping.Field{Type: "date"}, expected: "date"},
207207
{commonField: mapping.Field{Type: "geo_point"}, expected: "geo_point"},
208+
{commonField: mapping.Field{Type: "ip"}, expected: "ip"},
209+
{commonField: mapping.Field{Type: "ip_range"}, expected: "ip_range"},
208210
{commonField: mapping.Field{Type: "invalid"}, expected: nil},
209211
}
210212
for idx, test := range tests {

libbeat/mapping/field.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ func (f *Field) validateType() error {
153153
allowedFormatters = []string{"geo_point"}
154154
case "date_range":
155155
allowedFormatters = []string{"date_range"}
156-
case "boolean", "binary", "ip", "alias", "array":
156+
case "boolean", "binary", "ip", "alias", "array", "ip_range":
157157
// No formatters, metric types, or units allowed.
158158
case "object":
159159
if f.DynamicTemplate && (len(f.ObjectTypeParams) > 0 || f.ObjectType != "") {

libbeat/mapping/field_test.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -364,6 +364,11 @@ func TestFieldValidate(t *testing.T) {
364364
},
365365
err: true,
366366
},
367+
"allow ip_range": {
368+
cfg: common.MapStr{"type": "ip_range"},
369+
err: false,
370+
field: Field{Type: "ip_range"},
371+
},
367372
}
368373

369374
for name, test := range tests {

0 commit comments

Comments
 (0)