Действия в системе
В процессе работы пользователя Памир генерирует события. Эти события могут быть использованы для интеграции с внешней системой и логирования.
События аудита
События Памир попадают в exchange RabbitMQ типа topic, который называется pamir_audit_exchange. Клиенты должны самостоятельно создать подписку на необходимые события и обрабатывать их в своих очередях.
Тип сериализации тела событий - json. Тело событий:
event_type: str
user_id: UUID | None
user_login: str
user_role: str
endpoint: str
parameters: str
path_parameters: dict
metadata: dict
response_status_code: int
timestamp: datetime
События сервиса аутентификации
| Название | Ключ маршрутизации |
|---|---|
| Изменение профиля пользователя | auth.user_action.user.UserChanged |
| Создание пользователя | auth.user_action.user.UserCreated |
| Изменение данных пользователя | auth.user_action.user.UserProfileChanged |
| Удаление пользователя | auth.user_action.user.UserDeleted |
| Изменение пароля пользователя | auth.user_action.user.UserPasswordChanged |
| Установка пароля пользователя | auth.user_action.user.UserPasswordSet |
| Изменение статуса пользователя | auth.user_action.user.UserStatusChanged |
| Изменение истёкшего пароля | auth.user_action.user.UserExpiredPasswordChanged |
| Сброс/установка пароля для произвольного пользователя | auth.user_action.user.UserPasswordReset |
| Удаление сессии пользователя | auth.user_action.user.UserSessionDeleted |
| Получение данных Super User | auth.user_action.user.SuperUserDataAccessed |
| Удаление данных Super User | auth.user_action.user.SuperUserDataRevoked |
| Создание атрибута | auth.user_action.attributes.AttributeCreated |
| Обновление атрибута | auth.user_action.attributes.AttributeUpdated |
| Удаление атрибута | auth.user_action.attributes.AttributeDeleted |
| Сброс базы данных до начального состояния | auth.user_action.maintenance.DatabaseResetTriggered |
| Обновление правила доступа для интерфейсов | auth.user_action.access_rules.AccessRuleUpdated |
| Удаление правила доступа | auth.user_action.access_rules.AccessRuleDeleted |
| Создание нового правила доступа для интерфейсов | auth.user_action.access_rules.AccessRuleCreated |
| Обновление тегов доступа пользователя | auth.user_action.access_rules.UserAccessTagsUpdated |
| Изменение системной настройки | auth.user_action.settings.SettingUpdated |
| Создание API токена пользователя | auth.user_action.api_token.ApiTokenCreated |
| Деактивация API токена пользователя | auth.user_action.api_token.ApiTokenDeactivated |
| Выполнение search запроса к Opensearch | event.auth.user_action.logs.LogsSearch |
| Выполнение field_caps запроса к Opensearch | event.auth.user_action.logs.LogsFieldCaps |
События сервиса СРМ
| Название | Ключ маршрутизации |
|---|---|
| Изменение типа CI | srm.user_action.ci_type.CITypeUpdated |
| Удаление типа CI | srm.user_action.ci_type.CITypeDeleted |
| Создание типа CI | srm.user_action.ci_type.CITypeCreated |
| Обновление атрибутов типа CI | srm.user_action.ci_type.CITypeAttributesUpdated |
| Обновление возможных связей типа CI | srm.user_action.ci_type.CITypeLinksUpdated |
| Обновление атрибутов связи типа CI | srm.user_action.ci_type.CITypeLinkAttributesUpdated |
| Обновление шаблонов имен CI | srm.user_action.ci_type.CITypeNamesTemplateUpdated |
| Создание атрибута | srm.user_action.attribute.AttributeCreated |
| Обновление атрибута | srm.user_action.attribute.AttributeUpdated |
| Удаление атрибута | srm.user_action.attribute.AttributeDeleted |
| Создание связи между CI | srm.user_action.cit_links.CILinkCreated |
| Удаление связи между CI | srm.user_action.cit_links.CILinkDeleted |
| Обновление связи между CI | srm.user_action.cit_links.CILinkUpdated |
| Обновление атрибутов связи | srm.user_action.cit_links.CILinkAttributesUpdated |
| Обновление фетчера атрибутов | srm.user_action.attribute_fetchers.AttributeFetcherUpdated |
| Создание фетчера атрибутов | srm.user_action.attribute_fetchers.AttributeFetcherCreated |
| Удаление фетчера атрибутов | srm.user_action.attribute_fetchers.AttributeFetcherDeleted |
| Обновление парсера атрибутов | srm.user_action.attribute_parsers.AttributeParserUpdated |
| Создание парсера атрибутов | srm.user_action.attribute_parsers.AttributeParserCreated |
| Удаление парсера атрибутов | srm.user_action.attribute_parsers.AttributeParserDeleted |
| Удаление плагина | srm.user_action.plugins.PluginDeleted |
| Деинсталляция плагина | srm.user_action.plugins.PluginUninstalled |
| Установка плагина | srm.user_action.plugins.PluginInstalled |
| Установка плагина на раннеры | srm.user_action.plugins.PluginRunnersInstalled |
| Загрузка плагина | srm.user_action.plugins.PluginUploaded |
| Обновление модификаторов атрибутов CIT | srm.user_action.attribute_modifiers.CITypeAttributeModifiersUpdated |
| Удаление модификаторов атрибутов CIT | srm.user_action.attribute_modifiers.CITypeAttributeModifiersDeleted |
| Обновление фетчера связи CIT | srm.user_action.cit_link_fetchers.CITypeLinkFetcherUpdated |
| Создание фетчера связи CIT | srm.user_action.cit_link_fetchers.CITypeLinkFetcherCreated |
| Удаление фетчера связи CIT | srm.user_action.cit_link_fetchers.CITypeLinkFetcherDeleted |
| Обновление парсера связи CIT | srm.user_action.cit_link_parsers.CITypeLinkParserUpdated |
| Создание парсера связи CIT | srm.user_action.cit_link_parsers.CITypeLinkParserCreated |
| Удаление парсера связи CIT | srm.user_action.cit_link_parsers.CITypeLinkParserDeleted |
| Создание правила доступа | srm.user_action.access_rules.AccessRuleCreated |
| Изменение правила доступа | srm.user_action.access_rules.AccessRuleUpdated |
| Удаление правила по ID | srm.user_action.access_rules.AccessRuleDeleted |
| Удаление правила по имени | srm.user_action.access_rules.AccessRuleByNameDeleted |
| Изменение правила TQL | srm.user_action.access_rules_tql.TQLRuleUpdated |
| Удаление правила TQL | srm.user_action.access_rules_tql.TQLRuleDeleted |
| Создание правила TQL | srm.user_action.access_rules_tql.TQLRuleCreated |
| Удаление правила TQL по имени | srm.user_action.access_rules_tql.TQLRuleByNameDeleted |
| Создание запроса | srm.user_action.search_queries.SearchQueryCreated |
| Изменение запроса | srm.user_action.search_queries.SearchQueryUpdated |
| Удаление запроса | srm.user_action.search_queries.SearchQueryDeleted |
| Создание представления | srm.user_action.search_queries_views.SearchQueryViewCreated |
| Изменение представления | srm.user_action.search_queries_views.SearchQueryViewUpdated |
| Удаление представления | srm.user_action.search_queries_views.SearchQueryViewDeleted |
| Создание шаблона | srm.user_action.attribute_templates.AttributeTemplateCreated |
| Изменение шаблона | srm.user_action.attribute_templates.AttributeTemplateUpdated |
| Удаление шаблона | srm.user_action.attribute_templates.AttributeTemplateDeleted |
| Создание правила идентификации | srm.user_action.cit_identify_rules.IdentifyRuleCreated |
| Обновление правила идентификации | srm.user_action.cit_identify_rules.IdentifyRuleUpdated |
| Удаление правила идентификации | srm.user_action.cit_identify_rules.IdentifyRuleDeleted |
| Установка шаблона наименования | srm.user_action.cit_name_templates.NameTemplateSet |
| Изменение шаблона наименования | srm.user_action.cit_name_templates.NameTemplateUpdated |
| Удаление шаблона наименования | srm.user_action.cit_name_templates.NameTemplateDeleted |
| Изменение фильтра связи | srm.user_action.cit_link_filters.LinkFilterUpdated |
| Создание фильтра связи | srm.user_action.cit_link_filters.LinkFilterCreated |
| Удаление фильтра связи | srm.user_action.cit_link_filters.LinkFilterDeleted |
| Создание плана обогащения | srm.user_action.enrichment_plans.EnrichmentPlanCreated |
| Обновление плана обогащения | srm.user_action.enrichment_plans.EnrichmentPlanUpdated |
| Удаление плана обогащения | srm.user_action.enrichment_plans.EnrichmentPlanDeleted |
| Импорт планов обогащения из JSON | srm.user_action.exchange.EnrichmentPlansJsonImported |
| Импорт планов обогащения из файла | srm.user_action.exchange.EnrichmentPlansFileImported |
| Экспорт планов обогащения в JSON | srm.user_action.exchange.EnrichmentPlansJsonExported |
| Экспорт планов обогащения в файл | srm.user_action.exchange.EnrichmentPlansFileExported |
| Экспорт CI в CSV | srm.user_action.exchange.CIsCsvExported |
| Экспорт CI в CSV файл | srm.user_action.exchange.CIsCsvFileExported |
| Экспорт графа CI в JSON | srm.user_action.exchange.CIsJsonGraphExported |
| Экспорт графа CI в JSON файл | srm.user_action.exchange.CIsJsonGraphFileExported |
| Импорт типов CI из JSON | srm.user_action.exchange.CITypesJsonImported |
| Импорт типов CI из файла | srm.user_action.exchange.CITypesFileImported |
| Экспорт типов CI в JSON | srm.user_action.exchange.CITypesJsonExported |
| Экспорт типов CI в JSON файл | srm.user_action.exchange.CITypesFileExported |
| Экспорт атрибутов в JSON | srm.user_action.exchange.AttributesJsonExported |
| Экспорт атрибутов в JSON файл | srm.user_action.exchange.AttributesFileExported |
| Экспорт дашбордов в JSON | srm.user_action.exchange.DashboardsJsonExported |
| Экспорт дашбордов в JSON файл | srm.user_action.exchange.DashboardsFileExported |
| Импорт дашбордов из JSON | srm.user_action.exchange.DashboardsJsonImported |
| Создание дашборда | srm.user_action.dashboard.DashboardCreated |
| Обновление дашборда | srm.user_action.dashboard.DashboardUpdated |
| Удаление дашборда | srm.user_action.dashboard.DashboardDeleted |
| Клонирование дашборда | srm.user_action.dashboard.DashboardCloned |
| Импорт дашбордов из файла | srm.user_action.dashboard.DashboardsFileImported |
| Изменение настройки | srm.user_action.settings.SettingUpdated |
| Создание правила доступа | srm.user_action.access_rules_dashboard.DashboardRuleCreated |
| Обновление правила доступа | srm.user_action.access_rules_dashboard.DashboardRuleUpdated |
| Удаление правила доступа | srm.user_action.access_rules_dashboard.DashboardRuleDeleted |
| Удаление orphan-правил | srm.user_action.access_rules_dashboard.OrphanDashboardRulesDeleted |
| Удаление правила по имени | srm.user_action.access_rules_dashboard.DashboardRuleByNameDeleted |
| Изменение CI | srm.user_action.ci_public_v4.CIUpdated |
| Удаление CI | srm.user_action.ci_public_v4.CIDeleted |
| Изменение карты CI | srm.user_action.ci_public_v4.CIMapUpdated |
| Изменение цифрового отпечатка | srm.user_action.ci_public_v4.CIFingerprintUpdated |
| Массовое удаление CI | srm.user_action.ci_public_v4.CIsBatchDeleted |
| Удаление отмеченных CI | srm.user_action.ci_public_v4.CIsMarkedDeleted |
| Запуск обогащения CI | srm.user_action.ci_action_v4.CIEnrichmentStarted |
| Массовый запуск обогащения | srm.user_action.ci_action_v4.CIsEnrichmentStarted |
| Импорт CI из CSV | srm.user_action.ci_exchange_v4.CIsCsvImported |
| Импорт графа CI из JSON | srm.user_action.ci_exchange_v4.CIsJsonGraphImported |
| Удаление вкладки | srm.user_action.dashboard_tabs.TabDeleted |
| Создание вкладки | srm.user_action.dashboard_tabs.TabCreated |
| Создание вкладки из дашборда | srm.user_action.dashboard_tabs.DashboardTabCreated |
| Изменение виджета вкладки | srm.user_action.dashboard_tabs.TabWidgetUpdated |
| Создание виджета вкладки | srm.user_action.dashboard_tabs.TabWidgetCreated |
| Изменение шаблона вкладки | srm.user_action.dashboard_tabs.TabConfigUpdated |
| Частичное обновление шаблона | srm.user_action.dashboard_tabs.TabConfigPatched |
| Сброс настроек вкладки | srm.user_action.dashboard_tabs.TabSettingsReset |
| Сохранение настроек в дашборд | srm.user_action.dashboard_tabs.TabSettingsSaved |
| Восстановление из корзины | srm.user_action.dashboard_tabs.TabRestored |
| Удаление виджета вкладки | srm.user_action.dashboard_tabs.TabWidgetDeleted |
| Загрузить атрибуты для списка KE | srm.user_action.external.CIsAttributesLoad |
| Поиск КЕ в виде графа | srm.user_action.external.CIGraphSearch |
| Поиск КЕ в виде графа по имени запроса | srm.user_action.external.CIGraphSearchByName |
| Поиск КЕ в виде дерева | srm.user_action.external.CITreeSearch |
События сервиса управления заданиями
| Название | Ключ маршрутизации |
|---|---|
| Изменение настройки | task_tool.user_action.settings.SettingUpdated |
| Отмена задачи | task_tool.user_action.tasks.TaskRevoked |
| Массовая отмена задач | task_tool.user_action.tasks.TasksBulkRevoked |
| Прерывание выполнения задачи | task_tool.user_action.tasks.TaskAborted |
| Очистка очереди | task_tool.user_action.queues.QueueCleared |
События сервиса управления docker контейнерами
| Название | Ключ маршрутизации |
|---|---|
| Загрузка файла в контейнер | docker_tool.user_action.containers.ContainerFileUploaded |
| Выполнение команды в контейнере | docker_tool.user_action.containers.ContainerCommandExecuted |
| Запуск контейнера | docker_tool.user_action.containers.ContainerStarted |
| Остановка контейнера | docker_tool.user_action.containers.ContainerStopped |
| Перезапуск контейнера | docker_tool.user_action.containers.ContainerRestarted |
| Изменение настройки | docker_tool.user_action.settings.SettingUpdated |
| Изменение подключения | docker_tool.user_action.docker_urls.DockerUrlUpdated |
| Удаление подключения | docker_tool.user_action.docker_urls.DockerUrlDeleted |
| Создание подключения | docker_tool.user_action.docker_urls.DockerUrlCreated |
События сервиса уведомлений
| Название | Ключ маршрутизации |
|---|---|
| Изменение настройки | notification.user_action.settings.SettingUpdated |
| Сброс базы данных | notification.user_action.maintenance.DatabaseReset |
| Изменение конфигурации | notification.user_action.alertmanager.AlertmanagerConfigUpdated |
| Восстановление конфигурации | notification.user_action.alertmanager.AlertmanagerConfigRestored |
| Обновление конфигурации | notification.user_action.alertmanager.AlertmanagerConfigRefreshed |
| Изменение глобальной конфигурации | notification.user_action.global_config.GlobalConfigUpdated |
| Изменение правил подавления | notification.user_action.inhibit_rules.InhibitRulesUpdated |
| Изменение шаблонов конфигурации | notification.user_action.template_config.TemplateConfigUpdated |
| Изменение получателя | notification.user_action.receiver.ReceiverUpdated |
| Удаление получателя | notification.user_action.receiver.ReceiverDeleted |
| Создание получателя | notification.user_action.receiver.ReceiverCreated |
| Изменение подписки | notification.user_action.route.RouteUpdated |
| Удаление подписки | notification.user_action.route.RouteDeleted |
| Создание подписки | notification.user_action.route.RouteCreated |
| Изменение отправителя | notification.user_action.sender.SenderUpdated |
| Удаление отправителя | notification.user_action.sender.SenderDeleted |
| Создание отправителя | notification.user_action.sender.SenderCreated |
| Изменение интервала | notification.user_action.time_interval.TimeIntervalUpdated |
| Удаление интервала | notification.user_action.time_interval.TimeIntervalDeleted |
| Создание интервала | notification.user_action.time_interval.TimeIntervalCreated |
| Изменение шаблона уведомлений | notification.user_action.template.NotificationTemplateUpdated |
События сервиса мониторинга
| Название | Ключ маршрутизации |
|---|---|
| Изменение типа индикатора | monitoring.user_action.hi_types.HITypeUpdated |
| Удаление типа индикатора | monitoring.user_action.hi_types.HITypeDeleted |
| Создание типа индикатора | monitoring.user_action.hi_types.HITypeCreated |
| Изменение метрики | monitoring.user_action.tql_metrics.TQLMetricUpdated |
| Удаление метрики | monitoring.user_action.tql_metrics.TQLMetricDeleted |
| Создание метрики | monitoring.user_action.tql_metrics.TQLMetricCreated |
| Активация метрик | monitoring.user_action.tql_metrics.TQLMetricsEnabled |
| Отключение метрик | monitoring.user_action.tql_metrics.TQLMetricsDisabled |
| Импорт шаблона | monitoring.user_action.mt_exchange.TemplateImported |
| Массовый импорт шаблонов | monitoring.user_action.mt_exchange.TemplatesBulkImported |
| Импорт шаблона из файла | monitoring.user_action.mt_exchange.TemplateFileImported |
| Импорт экспортера | monitoring.user_action.mt_exchange.ExporterImported |
| Импорт экспортера из файла | monitoring.user_action.mt_exchange.ExporterFileImported |
| Импорт типа HI | monitoring.user_action.mt_exchange.HITypeImported |
| Импорт типа HI | monitoring.user_action.mt_exchange.HITypeFileImported |
| Импорт задания | monitoring.user_action.mt_exchange.JobImported |
| Импорт задания из файла | monitoring.user_action.mt_exchange.JobFileImported |
| Импорт правил | monitoring.user_action.mt_exchange.RulesImported |
| Изменение шаблона | monitoring.user_action.templates.TemplateUpdated |
| Удаление шаблона | monitoring.user_action.templates.TemplateDeleted |
| Создание шаблона | monitoring.user_action.templates.TemplateCreated |
| Обновление конфигурации | monitoring.user_action.prometheus.PrometheusConfigUpdated |
| Перезагрузка Prometheus | monitoring.user_action.prometheus.PrometheusReloaded |
| Изменение экспортера | monitoring.user_action.exporters.ExporterUpdated |
| Удаление экспортера | monitoring.user_action.exporters.ExporterDeleted |
| Создание экспортера | monitoring.user_action.exporters.ExporterCreated |
| Изменение способа управления | monitoring.user_action.exporters.ExporterManagementChanged |
| Применение конфигурации | monitoring.user_action.exporters.ExporterApplied |
| Создание задания | monitoring.user_action.jobs.JobCreated |
| Изменение задания | monitoring.user_action.jobs.JobUpdated |
| Удаление задания | monitoring.user_action.jobs.JobDeleted |
| Изменение настройки | monitoring.user_action.settings.SettingUpdated |
| Сброс базы данных | monitoring.user_action.maintenance.DatabaseReset |
| Обновление правила | monitoring.user_action.access_rule_acl.AccessRuleUpdated |
| Удаление правила | monitoring.user_action.access_rule_acl.AccessRuleDeleted |
| Создание правила | monitoring.user_action.access_rule_acl.AccessRuleCreated |
| Удаление правила по имени | monitoring.user_action.access_rule_acl.AccessRuleByNameDeleted |
| Изменение связи | monitoring.user_action.tql_hi_links_v2.HILinkUpdated |
| Удаление связи | monitoring.user_action.tql_hi_links_v2.HILinkDeleted |
| Создание связи | monitoring.user_action.tql_hi_links_v2.HILinkCreated |
| Активация связей | monitoring.user_action.tql_hi_links_v2.HILinksEnabled |
| Изменение связи | monitoring.user_action.thl_alert_hint.AlertHintLinkUpdated |
| Удаление связи | monitoring.user_action.thl_alert_hint.AlertHintLinkDeleted |
| Создание связи | monitoring.user_action.thl_alert_hint.AlertHintLinkCreated |
События сервиса лицензий
| Название | Ключ маршрутизации |
|---|---|
| Загрузка новой лицензии | license.user_action.license_management.LicenseUploaded |
| Генерация файла запроса лицензии | license.user_action.license_management.LicenseRequestGenerated |
Обмен событиями
События Памир попадают в exchange RabbitMQ типа topic, который называется pamir_exchange. Клиенты должны самостоятельно
создать подписку на необходимые события и обрабатывать их в своих очередях.
Тип сериализации тела событий - json.
События сервиса аутентификации
Список событий Памир:
| Название | Ключ маршрутизации |
|---|---|
| Создание пользователя | auth.user.Created |
| Выполнен вход пользователя | auth.user.Login |
| Выполнен выход пользователя | auth.user.Logout |
| Неудачная попытка входа | auth.user.LoginFailed |
Тело события:
login: str
user_id: UUID
attribute_values: list = [
{
attribute_name: str,
value: Any
}
]
login_failed_count: int
status: str
unblockable: bool
provider: str # для auth.user.Login
reason: str # для auth.user.LoginFailed
timestamp: str
События сервиса СРМ
| Название | Ключ маршрутизации | Тело события |
|---|---|---|
| Ошибка при превышении количества объектов разрешенных лицензией | srm.ci.LicenseViolation | controlled_objects: int allow_cis: int current_controlled_objects: int current_cis: int |
| Ошибка при создании КЕ | srm.ci.CreatedError | reason: list[tuple[EXC_NAME, EXC_TITLE, EXC_DETAIL, EXC_MSG_VARS]] ci_type_name: str |
События сервиса мониторинга
| Название | Ключ маршрутизации | Тело события |
|---|---|---|
| Ошибка при превышении количества объектов разрешенных лицензией | monitoring.target.LicenseViolation | controlled_objects: int current_controlled_objects: int |