Типы данных обработки логов: различия между версиями
Материал из Документация Ключ-АСТРОМ
Новая страница: «Скрипт в определении процессора работает со строго типизированными данными: функции и о...» |
Нет описания правки |
||
| Строка 1: | Строка 1: | ||
= Типы данных обработки логов = | |||
Скрипт в определении процессора работает со строго типизированными данными: функции и операторы принимают только объявленные типы данных. Тип присваивается всем входным полям, определённым командой <code>USING</code>, а также переменным, созданным во время разбора или с помощью функций приведения типов. Каким бы ни был тип поля, являющегося частью вывода процессора, система прилагает все усилия, чтобы преобразовать его к типу, ожидаемому событием. То же самое относится к входным полям, определённым командой <code>USING</code>. Например, атрибут <code>STRING</code> со значением <code>123</code> можно легко преобразовать в тип <code>INTEGER</code>, но не в тип <code>BOOLEAN</code>. | |||
== Типы данных, поддерживаемые командой USING (ввод/вывод процессора) == | |||
{| class="wikitable" | {| class="wikitable" | ||
!Тип данных | !Тип данных | ||
!Описание | !Описание | ||
|- | |- | ||
|BOOLEAN | |<code>BOOLEAN</code> | ||
|Имеет только два возможных значения: | |Имеет только два возможных значения: <code>true</code> и <code>false</code>. | ||
|- | |- | ||
|INTEGER | |<code>INTEGER</code> | ||
|32-битное целое число со знаком в | |32-битное целое число со знаком в дополнительном коде с минимальным значением −2^31 и максимальным значением 2^31−1. | ||
|- | |- | ||
|LONG | |<code>LONG</code> | ||
|64-битное целое число в | |64-битное целое число в дополнительном коде. Знаковое длинное целое имеет минимальное значение −2^63 и максимальное значение 2^63−1. | ||
|- | |- | ||
|DOUBLE | |<code>DOUBLE</code> | ||
|64-битное число с плавающей | |64-битное число с плавающей запятой двойной точности по стандарту '''IEEE 754'''. Диапазон его значений выходит за рамки данного обсуждения, но описан в разделе «Типы, форматы и значения с плавающей запятой» спецификации языка '''Java'''. | ||
|- | |- | ||
|DURATION | |<code>DURATION</code> | ||
|Период времени в наносекундах. | |Период времени в наносекундах. | ||
|- | |- | ||
|STRING | |<code>STRING</code> | ||
|Последовательность символов с | |Последовательность символов с заданной кодировкой. | ||
|- | |- | ||
|TIMESTAMP | |<code>TIMESTAMP</code> | ||
|Ссылка на момент времени с точностью до наносекунд. | |Ссылка на момент времени с точностью до наносекунд. | ||
|- | |- | ||
|IPADDR | |<code>IPADDR</code> | ||
|Представляет адрес IPv4 или IPv6. | |Представляет адрес '''IPv4''' или '''IPv6'''. | ||
|} | |} | ||
== Дополнительные типы данных, появляющиеся после разбора == | |||
Помимо перечисленных выше, в самом скрипте процессора после разбора могут появляться следующие типы данных: | |||
{| class="wikitable" | {| class="wikitable" | ||
!Тип данных | !Тип данных | ||
!Описание | !Описание | ||
|- | |- | ||
|BYTES | |<code>BYTES</code> | ||
|Последовательность байтов. | |Последовательность байтов. | ||
|- | |- | ||
|TUPLE | |<code>TUPLE</code> | ||
|Набор данных пар «ключ-значение», | |Набор данных в виде пар «ключ-значение», значение которых может быть любого из поддерживаемых типов данных. | ||
|- | |- | ||
|VARIANT | |<code>VARIANT</code> | ||
|Тип данных, | |Тип данных, определяемый динамически во время выполнения. <code>VARIANT</code> может представлять любой из примитивных типов данных. | ||
|- | |- | ||
|VARIANT_ARRAY | |<code>VARIANT_ARRAY</code> | ||
|Массив <code>VARIANT</code> | |Массив данных типа <code>VARIANT</code>. | ||
|- | |- | ||
|VARIANT_OBJECT | |<code>VARIANT_OBJECT</code> | ||
| | |Набор пар «ключ-значение» с ключами типа <code>STRING</code> и значениями типа <code>VARIANT</code>. <code>VARIANT_OBJECT</code> создаётся при разборе объектов '''JSON'''. | ||
|} | |} | ||
Текущая версия от 18:22, 13 октября 2026
Типы данных обработки логов
Скрипт в определении процессора работает со строго типизированными данными: функции и операторы принимают только объявленные типы данных. Тип присваивается всем входным полям, определённым командой USING, а также переменным, созданным во время разбора или с помощью функций приведения типов. Каким бы ни был тип поля, являющегося частью вывода процессора, система прилагает все усилия, чтобы преобразовать его к типу, ожидаемому событием. То же самое относится к входным полям, определённым командой USING. Например, атрибут STRING со значением 123 можно легко преобразовать в тип INTEGER, но не в тип BOOLEAN.
Типы данных, поддерживаемые командой USING (ввод/вывод процессора)
| Тип данных | Описание |
|---|---|
BOOLEAN
|
Имеет только два возможных значения: true и false.
|
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
|
Набор пар «ключ-значение» с ключами типа STRING и значениями типа VARIANT. VARIANT_OBJECT создаётся при разборе объектов JSON.
|