Атрибуты ресурсов

Материал из Документация Ключ-АСТРОМ

Атрибуты ресурсов на уровне хоста

Все артефакты мониторинга, которые покидают данный хост, то есть имеют хост в качестве своего ресурса, обогащаются атрибутами ресурса на уровне хоста.

Атрибуты ресурсов на уровне хоста — это атрибуты ресурсов отслеживаемых хостов. Все события, генерируемые компонентами ЕдиногоАгента, работающими на данном хосте, и измерения, получаемые от них, дополняются этими атрибутами. Затем их можно использовать в запросах для структурирования и фильтрации данных мониторинга.

Вы также можете использовать некоторые атрибуты для создания политик управления доступом к данным. См. раздел Глобальный справочник полей и найдите поля, отмеченные тегом Разрешение.

Если у вас есть доступ к хосту с установленным ЕдинымАгентом, вы можете просмотреть dt_host_metadata.json и dt_host_metadata.properties, чтобы увидеть область обогащения атрибутов ресурсов, предоставляемую ЕдинымАгентом. Подробнее см. в разделе Обогащение полученных данных измерениями, специфичными для Ключ-АСТРОМ.

Пользовательские атрибуты уровня хоста

Вы можете создавать собственные атрибуты, настраивая теги «ключ-значение» и свойства через oneagentctl или через удалённое управление конфигурацией ЕдиныхАгентов и АктивныхШлюзов. Пользовательские теги и свойства, определённые таким образом, отображаются как простые атрибуты ресурсов первого уровня.

Ключевые теги без значений игнорируются.

Теги, назначенные с помощью автоматизированных правил, переменных среды, топологии и API Smartscape, не включены.

Поскольку ключи зависят от вашей конфигурации, они не охватываются семантическим словарем.

Название тегов не могут содержать префиксы dt., за исключением следующих тегов, которые зависят от вашей конфигурации:

Атрибуты из пользовательских свойств и тегов не переопределяют встроенные расширения, если у них такое же название. При создании пользовательских свойств и тегов проверьте глобальный справочник полей, чтобы убедиться, что ваше название ещё не используется.

Обработка конфликтов имен при объединении пользовательских свойств и тегов

Атрибуты ресурсов уровня хоста можно импортировать из пользовательских свойств и тегов хоста. Файлы hostcustomproperties.conf и hostautotag.conf являются источниками этих атрибутов. Если они следуют шаблону key=value, в обоих файлах могут существовать одни и те же ключи, но с разными значениями. При объединении содержимое из hostautotag.conf имеет приоритет над содержимым из hostcustomproperties.conf, поскольку теги имеют приоритет в случае конфликта имён.

Если при объединении атрибутов ресурсов на разных уровнях возникает конфликт имен, приоритет имеет самый низкий уровень.

Общие атрибуты уровня хоста

Все атрибуты ресурсов на уровне хоста следуют семантическому словарю, если не указано иное.

Атрибут Описание
Пользовательские теги хоста См. Пользовательские атрибуты (выше)
dt.host_group.id Обратите внимание на разницу между dt.entity.host_group и dt.host_group.id:
  • dt.host_group.id - название группы хостов. Это понятный человеку идентификатор группы хостов, например MyHostGroup.
  • dt.entity.host_group - идентификатор сущности группы хостов в модели Ключ-АСТРОМ. Идентификатор сущности не совпадает с понятным человеку идентификатором группы хостов. Он создаётся автоматически и имеет, например, формат HOST_GROUP-008786529C8EE446.

Более подробную информацию см. в разделе Организация среды с помощью групп хостов.

dt.entity.host Идентификатор сущности типа HOST.
dt.entity.host_group Идентификатор сущности типа HOST_GROUP.
dt.security_context Контекст безопасности используется для настройки прав доступа к отслеживаемым объектам в Grail и требует настройки. См. раздел Настраиваемые атрибуты (выше).
dt.cost.product Этот атрибут используется для назначения идентификатора продукта или приложения и требует настройки. См. раздел Настраиваемые атрибуты (выше).
host.name Название хоста определяется в зависимости от источника данных, например, ЕдиныйАгент, Расширения или OpenTelemetry. Название хоста можно изменить в соответствии с правилами именования.

Обратите внимание, что это не идентификатор сущности типа HOST (dt.entity.host).

AWS

Атрибут Описание
dt.entity.ec2_instance Идентификатор сущности типа EC2_INSTANCE.
dt.entity.aws_availability_zone Идентификатор сущности типа AWS_AVAILABILITY_ZONE.
aws.availability_zone Конкретная зона доступности в заданном регионе AWS. Например, us‑east‑1a.
aws.region Определенное географическое местоположение облака AWS. Например, us‑east‑1.
aws.resource.id Уникальный идентификатор ресурса.

Azure

Атрибут Описание
dt.entity.azure_vm Идентификатор сущности типа AZURE_VM, извлеченный из instanceId поля метаданных экземпляра Azure.
dt.entity.azure_region Идентификатор сущности типа AZURE_REGION.
azure.location Определенное географическое местоположение ресурса облака Azure, извлеченное из location поля метаданных экземпляра Azure.
azure.vmid Уникальный 128-битный идентификатор виртуальной машины Azure.

Google Cloud

Атрибут Описание
gcp.instance.id Постоянный идентификатор, уникальный в пределах вашего проекта Google Cloud.
gcp.project.id Идентификатор проекта GCP, связанного с этим ресурсом.
dt.entity.gcp_zone Идентификатор сущности типа GCP_ZONE.
gcp.zone Зона — это подмножество региона. Каждый регион состоит из трёх или более зон. Например, europe-west3-c.
gcp.region Регион — это определённое географическое местоположение, где вы можете размещать свои ресурсы. Например, europe-west3.

OpenStack

Атрибут Описание
openstack.availability_zone Конкретная зона доступности в заданном регионе OpenStack. Например, us-east-1a.
openstack.instance_uuid UUID экземпляра OpenStack.

Kubernetes

Атрибут Описание
k8s.cluster.uid Поскольку название кластера Kubernetes не всегда доступно, Ключ-АСТРОМ идентифицирует кластер по UID пространства имён kube-system. Доступно только в развёртываниях Ключ-АСТРОМ Operator.
k8s.node.name Название узла Kubernetes. Доступно только в развертываниях Ключ-АСТРОМ Operator.

BOSH

Атрибут Описание
bosh.instance_id Уникальный идентификатор, присваиваемый каждому развернутому экземпляру BOSH.
bosh.availability_zone Конкретное географическое местоположение BOSH. Например, us-east-1a.
bosh.name Уникальный идентификатор развертывания или экземпляра.

Нормализация атрибутов ресурсов

Для обеспечения согласованного и надёжного сбора метрик ко всем соответствующим внутренним ключам и значениям метрик применяется нормализация атрибутов ресурсов. Этот процесс помогает предотвратить потерю метрик из-за недопустимых или неправильно сформированных измерений.

Ключевые правила измерения

Описание правила Подробности
Недопустимые символы Недопустимый символ или серия недопустимых символов заменяется одним символом подчёркивания _. Например, zaó$%ć заменяется на za_.
Пустые ключи Измерения без допустимых символов пропускаются.
Ограничение длины ключа ЕдиныйАгент версии 1.317+ Макс. 350 символов (ранее макс. 100 символов)

Правила значений измерений

Описание правила Подробности
Разрешенные символы Все неуправляющие символы (ASCII и Unicode)
Управляющие символы Не допускается. Управляющий символ (то есть символ, используемый в качестве инструкции и не отображаемый; например, символ переноса строки, табуляции) или серия таких символов заменяется одним символом подчёркивания _.
Ограничение длины значения ЕдиныйАгент версии 1.313+ Макс. 2048 символов (ранее макс. 255 символов)
Указанные значения Если значение начинается и заканчивается на ", оно экранируется.

Пределы размеров

Для соответствия текущей спецификации используется определенная иерархия измерений и определенные пределы, позволяющие предотвратить предупреждения и падения показателей, вызванные превышением этих пределов.

По умолчанию глобальный предел измерения равен 100, а определяемый пользователем предел измерения составляет 40% от глобального предела.