Типы данных обработки логов
Скрипт в определении процессора работает со строго типизированными данными: функции и операторы принимают только объявленные типы данных. Тип назначается всем входным полям, определенным командой, USING а также переменным, созданным при разборе или использовании функций приведения.
Какой бы тип ни имел поле, являющееся частью вывода процессора, система делает все возможное, чтобы преобразовать его в тип, ожидаемый событием. То же самое относится к полям ввода, определенным командой USING. Например, STRING атрибут со значением 123 можно легко преобразовать в INTEGER тип, но не в BOOLEAN тип.
Типы данных, поддерживаемые командой USING (ввод/вывод процессора):
| Тип данных | Описание |
|---|---|
| BOOLEAN | Имеет только два возможных значения: истина и ложь. |
| INTEGER | 32-битное целое число со знаком в формате дополнения до двух, минимальное -2^31 и максимальное значения которого равны 2^31-1.
|
| LONG | 64-битное целое число в формате дополнения до двух. Знаковое длинное число имеет минимальное значение -2^63 и максимальное значение 2^63-1.
|
| DOUBLE | 64-битное число с плавающей точкой двойной точности IEEE 754. Диапазон его значений выходит за рамки данного обсуждения, но указан в разделе «Типы, форматы и значения с плавающей точкой» спецификации языка Java. |
| DURATION | Период времени в наносекундах. |
| STRING | Последовательность символов с указанным набором символов. |
| TIMESTAMP | Ссылка на момент времени с точностью до наносекунд. |
| IPADDR | Представляет адрес IPv4 или IPv6. |
Кроме того, в самом скрипте процессора после синтаксического анализа могут появиться дополнительные типы данных:
| Тип данных | Описание |
|---|---|
| BYTES | Последовательность байтов. |
| TUPLE | Набор данных пар «ключ-значение», значением которых может быть любой из поддерживаемых типов данных. |
| VARIANT | Тип данных, оцениваемый динамически во время выполнения, VARIANT может представлять любой из примитивных типов данных.
|
| VARIANT_ARRAY | Массив VARIANT типов данных.
|
| VARIANT_OBJECT | При анализе объектов JSON создается набор пар ключ-значение с STRING ключами типа и VARIANT значениями типа VARIANT_OBJECT
|