Системные функции

В данной статье при описании функций приняты следующие обозначения:

  • Типы значений, которые принимает аргумент, указаны в угловых скобках.

  • Перечень необязательных аргументов заключается в квадратные скобки. При вызове функции квадратные скобки вводить не нужно.

  • После :: в угловых скобках указаны типы значений, которые возвращает функция.

get_env_var

Возвращает значение переменной окружения, указанной в name.

Спецификация функции

get_env_var(name: <строка>)
:: <строка>, <ошибка>
Аргумент Тип Описание По умолчанию Обязателен

name

строка

Имя переменной окружения

да

Ошибки

Функция get_env_var может возвращать ошибки, что означает, что обработка необходима для следующих ошибок:

  • Переменная окружения name не существует.

  • Значение переменной окружения name не является допустимым значением Unicode.

Примеры

Получить значение переменной окружения

Example 1. Исходный код
get_env_var!("HOME")
Example 2. Результат
/root

get_hostname

Возвращает имя хоста локальной системы.

Спецификация функции

get_hostname()
:: <строка>, <ошибка>

Ошибки

Функция get_hostname может возвращать ошибки, для которых требуется обработка:

  • Внутреннее разрешение имени хоста завершилось неудачей.

Примеры

Получить имя хоста

Example 3. Исходный код
.hostname = get_hostname!()

get_timezone_name

Возвращает название часового пояса, заданного в конфигурации Vector. Если в конфигурации установлено значение local, то функция пытается определить часовой пояс на основе операционной системы хоста. Если определить название согласно IANA не получилось, возвращается смещение местного часового пояса от UTC в формате "[-+] ЧЧ:ММ", например, "+02:00".

Спецификация функции

get_timezone_name()
:: <строка>, <ошибка>

Ошибки

Функция get_timezone_name() может возвращать ошибки, для которых требуется обработка:

  • Получение информации о местном часовом поясе завершилось неудачей.

Пример

Получить имя местного часового пояса согласно IANA

Example 4. Исходный код
.vector_timezone = get_timezone_name!()

now

Возвращает текущую отметку времени в часовом поясе UTC с точностью до наносекунд.

Спецификация функции

now()
:: <метка времени>

Примеры

Получение текущей отметки времени

Example 5. Исходный код
now()
Example 6. Результат
2021-03-04T10:51:15.928937Z