add log warning to starlark drop-fields example
This commit is contained in:
parent
11b83dbd54
commit
42eacb3a42
|
|
@ -10,6 +10,9 @@
|
||||||
# measurement,host=hostname a=1i,b=4.2,c=42.0,d="v3.14",e=true,f=23.0 1597255410000000000
|
# measurement,host=hostname a=1i,b=4.2,c=42.0,d="v3.14",e=true,f=23.0 1597255410000000000
|
||||||
# measurement,host=hostname a=1i,c=42.0,d="v3.14",e=true,f=23.0 1597255410000000000
|
# measurement,host=hostname a=1i,c=42.0,d="v3.14",e=true,f=23.0 1597255410000000000
|
||||||
|
|
||||||
|
load("logging.star", "log")
|
||||||
|
# loads log.debug(), log.info(), log.warn(), log.error()
|
||||||
|
|
||||||
expected_type = {
|
expected_type = {
|
||||||
"a": "int",
|
"a": "int",
|
||||||
"b": "float",
|
"b": "float",
|
||||||
|
|
@ -22,5 +25,6 @@ def apply(metric):
|
||||||
for k, v in metric.fields.items():
|
for k, v in metric.fields.items():
|
||||||
if type(v) != expected_type.get(k, type(v)):
|
if type(v) != expected_type.get(k, type(v)):
|
||||||
metric.fields.pop(k)
|
metric.fields.pop(k)
|
||||||
|
log.warn("Unexpected field type dropped: metric {} had field {} with type {}, but it is expected to be {}".format(metric.name, k, type(v), expected_type.get(k, type(v))))
|
||||||
|
|
||||||
return metric
|
return metric
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue