Convert values between different units. Such as, 514 ms to 0.514 or sizeInKiB=4 to size=4096.

ParameterTypeRequiredDefaultDescription
asstringfalse The output name of the field to set (defaults to the same as the input field).
binarybooleanfalse If specified, unit prefixes kMGTPEZY will be treated as powers of 1024 instead of 1000.
fieldstringtrue The name of the input field. [a]
fromstringfalse If the field contains unitless values, specify this parameter to tell which unit the value should be normalized from.
keepUnitbooleanfalse If specified, the output field will have the normalized unit appended.
tostringfalse The output field should have the value converted to this unit.
unitstringfalse If specified, the field must end with this unit.

[a] When you provide only one parameter, the implied parameter is field

Troubleshooting note: If the unit begins with a reserved prefix character, try manually setting the unit parameter.

Any unit is supported and the following unit prefixes are converted:

Prefix Decimal Factor Binary Factor Prefix Typical Value
Y 10^24 1024^8 Yotta- Bytes
Z 10^21 1024^7 Zetta- Bytes
E 10^18 1024^6 Exa- Bytes
P 10^15 1024^5 Peta- Bytes
T 10^12 1024^4 Tera- Bytes
G 10^9 1024^3 Giga- Bytes
M 10^6 1024^2 Mega- Bytes
k 10^3 1024 Kilo- Metric, Bytes
h 10^2   Hect- Metric
da 10^1   Deca- Metric
d 10-1   Deci- Metric
c 10-2   Centi- Metric
m 10-3   Milli- Metric, Seconds
u 10-6   Micro- Metric, Seconds
µ 10-6   Micro- Metric, Seconds
n 10-9   Nano Metric, Seconds
p 10-12   Pico Metric, Seconds
f 10-15   Femto Metric, Seconds
a 10-18   Atto Metric, Seconds
z 10-21   Zepto Metric, Seconds
y 10-24   Yocto Metric, Seconds
Ki 2^10 1024 Kibi Bytes
Mi 2^20 1024^2 Mebi Bytes
Gi 2^30 1024^3 Gibi Bytes
Ti 2^40 1024^4 Tebi Bytes
Pi 2^50 1024^5 Pebi Bytes
Ei 2^60 1024^6 Exbi Bytes
Zi 2^70 1024^7 Zebi Bytes
Yi 2^80 1024^8 Yobi Bytes

If a field contains a value such as 5 kB that should be treated as 5 KiB, set the binary flag.

When the unit is a rate, such as MB/min the rate will be normalized to per second, e.g. B/s.

The following rate conversions are supported: s, sec, m, min, h, hour, d, day, w, week.

Examples

Parses a value into a number by removing the unit. An input event with the field size with the value 5 MB results in the field size having the value 5000000.

humio
unit:convert(size)

Parses a value into a number by removing the unit. An input event with the field size with the value 5 MiB results in the field size having the value 5242880.

humio
unit:convert(size)

Parses a value into a number by removing the unit. An input event with the field size with the value 5 MB results in the field size having the value 5242880.

humio
unit:convert(size, binary=true)

Parses a value into a number by removing the unit. An input event with the field duration with the value 514 us results in the field duration having the value 0.000514.

humio
unit:convert(duration)

Parses a unit less value into a number by manually specifying the input unit. An input event with the field size with the value 234.567 results in the field size having the value 234567.

Internally the value is parsed as {size} {from}, just as if the field had contained the value 234.567 k.

humio
unit:convert(size, from="k")

Parses a value into a number by removing the unit. An input event with the field rate with the value 120 hits/min results in the field rate having the value 2.

Note: since the unit in this case starts with a letter h from the supported prefixes, it will be interpreted as the prefix h (102) and unit its. To enforce that the unit is actually hits, specify the unit parameter.

humio
unit:convert(rate, as="rate", unit="hits")

Converts a number into a value with a unit. An input event with the field size with the value 19886168 results in the field rate having the value 19.886168.

humio
unit:convert(rate, as="rate", to="M")