Skip to content
ВозможностиДокументацияЦеныПартнёрыPlaygroundFAQ

Система тегов

Тегирование ресурсов (агенты, политики, алерты) для группировки, фильтрации и targeting

Обзор

Tags позволяют группировать ресурсы FlowLink по среде, роли, команде или любым другим метаданным. Теги используются в политиках для targeting: можно создать правило, которое применяется только к агентам с определённым тегом. Поддерживаются системные теги (автоматические) и неограниченное количество пользовательских. Каждый тег может иметь цвет и иконку для визуальной идентификации в Dashboard.

Теги на ресурс

Максимум 50 тегов на ресурс

Все тарифы

Системные теги

6 автогенерируемых тегов

Все тарифы

Кастомные теги

Неограниченное количество

Все тарифы

Цвет и иконка

Визуальная идентификация

Team+

Как работают теги

Теги — это ключ-значение метаданные, привязанные к ресурсам (агенты, политики, алерты). Теги используются для: (1) группировки ресурсов в Dashboard, (2) фильтрации в списковых API, (3) targeting в политиках, (4) bulk operations. Системные теги создаются автоматически на основе среды агента, его роли и статуса. Кастомные теги создаются пользователем через API или Dashboard.

# Жизненный цикл тега

1. Создание:

PUT /agents/{id}/tags или Dashboard UI

# 2. Применение:

Фильтрация API, targeting в политиках, bulk ops

# 3. Удаление:

DELETE /agents/{id}/tags (кастомные только)

Системные теги

Системные теги создаются автоматически и не могут быть удалены. Они отражают состояние агента и его окружение.

ТегТипОписание
env:productionautoАгент подключён к production среде
env:stagingautoСтейджинг среда
role:apiautoAPI сервер обнаружен
role:databaseautoСервер баз данных
role:workerautoBackground worker
role:frontendautoFrontend/статический сервер

Типы ресурсов

Теги могут быть привязаны к различным типам ресурсов FlowLink:

agents

Агенты — основная цель тегирования

policies

Политики — для организации rules

alerts

Алерты — для фильтрации по категориям

Сценарии использования

Environment

Группировка по staging/prod/preview

Team

По команде (frontend/backend/mobile)

Criticality

critical/high/medium/low

Compliance

pci-dss, gdpr, fstek

Region

eu-west, us-east, ru-central

Cost Center

billing:team-alpha, billing:team-beta

Цвета и иконки

Каждый кастомный тег может иметь цвет и иконку для визуальной идентификации в Dashboard и алертах.

bash
1curl -X PUT "https://api.flowlink.io/v1/tags/production" \
2 -H "Authorization: Bearer $TOKEN" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "color": "#ef4444",
6 "icon": "server",
7 "description": "Production environment resources"
8 }'
🔴

#ef4444

🟡

#f59e0b

🟢

#10b981

🔵

#3b82f6

Использование в политиках

Теги используются в правиле match для targeting конкретных агентов. Политика применяется только к агентам, имеющим указанные теги.

yaml
1policies:
2 - name: block-rm-prod
3 match:
4 tags: ["env:production"]
5 command: "rm -rf*"
6 action: deny
7 severity: critical
8
9 - name: restrict-db-access
10 match:
11 tags: ["role:frontend"]
12 command: "psql*|mysql*"
13 action: deny
14 severity: high
15
16 - name: ci-auto-approve
17 match:
18 tags: ["ci-runner"]
19 command: "git:*|npm:*"
20 action: auto_approve

Фильтрация по тегам

Все списковые API поддерживают фильтрацию по одному или нескольким тегам через query параметр tag.

bash
1# Фильтр по одному тегу
2curl -s "https://api.flowlink.io/v1/agents?tag=env:production" \
3 -H "Authorization: Bearer $TOKEN"
4
5# Фильтр по нескольким тегам (AND)
6curl -s "https://api.flowlink.io/v1/agents?tag=env:production&tag=critical" \
7 -H "Authorization: Bearer $TOKEN"
8
9# Фильтр политик по тегу
10curl -s "https://api.flowlink.io/v1/policies?tag=pci-dss" \
11 -H "Authorization: Bearer $TOKEN"

Bulk операции

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

bash
1# Добавить тег нескольким агентам
2curl -X POST "https://api.flowlink.io/v1/tags/bulk/apply" \
3 -H "Authorization: Bearer $TOKEN" \
4 -H "Content-Type: application/json" \
5 -d '{
6 "agent_ids": ["agent-prod-01", "agent-prod-02", "agent-prod-03"],
7 "tags": ["migration-v2"],
8 "action": "add"
9 }'
10
11# Удалить тег у нескольких агентов
12curl -X POST "https://api.flowlink.io/v1/tags/bulk/apply" \
13 -H "Authorization: Bearer $TOKEN" \
14 -H "Content-Type: application/json" \
15 -d '{
16 "agent_ids": ["agent-prod-01", "agent-prod-02"],
17 "tags": ["staging"],
18 "action": "remove"
19 }'
json
1{
2 "updated_count": 3,
3 "agents": [
4 { "id": "agent-prod-01", "tags": ["env:production", "critical", "migration-v2"] },
5 { "id": "agent-prod-02", "tags": ["env:production", "migration-v2"] },
6 { "id": "agent-prod-03", "tags": ["env:production", "migration-v2"] }
7 ]
8}

API Reference

Установить теги агента

bash
1curl -X PUT "https://api.flowlink.io/v1/agents/agent-prod-01/tags" \
2 -H "Authorization: Bearer $TOKEN" \
3 -H "Content-Type: application/json" \
4 -d '{"tags": ["production", "critical", "payment-gateway"]}'
json
1{
2 "agent_id": "agent-prod-01",
3 "tags": ["env:production", "production", "critical", "payment-gateway"],
4 "system_tags": ["env:production"],
5 "custom_tags": ["production", "critical", "payment-gateway"]
6}

Список тегов организации

bash
1curl -s "https://api.flowlink.io/v1/tags" \
2 -H "Authorization: Bearer $TOKEN" | jq
json
1{
2 "tags": [
3 { "name": "production", "color": "#ef4444", "icon": "server", "resource_count": 12 },
4 { "name": "critical", "color": "#f59e0b", "icon": "alert", "resource_count": 5 },
5 { "name": "pci-dss", "color": "#10b981", "icon": "shield", "resource_count": 8 },
6 { "name": "env:production", "color": null, "icon": null, "resource_count": 15, "system": true }
7 ],
8 "total": 4
9}

Удалить тег у агента

bash
1curl -X DELETE "https://api.flowlink.io/v1/agents/agent-prod-01/tags" \
2 -H "Authorization: Bearer $TOKEN" \
3 -H "Content-Type: application/json" \
4 -d '{"tags": ["staging"]}'
json
1{
2 "agent_id": "agent-prod-01",
3 "removed": ["staging"],
4 "remaining": ["env:production", "production", "critical"]
5}

Обновить метаданные тега

bash
1curl -X PUT "https://api.flowlink.io/v1/tags/pci-dss" \
2 -H "Authorization: Bearer $TOKEN" \
3 -H "Content-Type: application/json" \
4 -d '{"color": "#10b981", "icon": "shield", "description": "PCI DSS compliant resources"}'

Устранение неполадок

Тег не применяется в политике

Убедитесь, что имя тега в политике совпадает с именем на агенте (включая префикс). Проверьте через GET /agents/{id} — поле tags содержит текущие теги.

Системный тег отсутствует

Системные теги создаются при первом connect агента. Если агент ещё не подключался, системные теги не появятся. Выполните health check для принудительного обнаружения.

Превышен лимит 50 тегов

Удалите неиспользуемые кастомные теги через DELETE /agents/{id}/tags. Рассмотрите использование более конкретных тегов вместо множества мелких.

Лучшие практики

Используйте префиксы для согласованности

env:, team:, role:, compliance: — это облегчает поиск и фильтрацию. Пример: env:production, team:backend, role:api.

Не используйте пробелы в именах

Предпочтительны дефисы и нижнее подчёркивание: frontend-api, payment_gateway.

Названия нечувствительны к регистру

production и Production — один тег. Храните согласованно, предпочтительно lowercase.

Используйте системные теги + кастомные

Системные теги дают автоматическую классификацию. Кастомные добавляют бизнес-контекст.

Документируйте схему тегов

Создайте внутренний документ с описанием всех используемых тегов и их назначения. Это помогает команде.

Edit this page