Поделиться через


Трассировка событий

Это важно

По состоянию на 3 февраля 2025 года защита от мошенничества Dynamics 365 больше не доступна для покупки. Поддержка защиты от мошенничества завершится 3 февраля 2026 г. Дополнительные сведения см. в статье Завершение поддержки Dynamics 365 Fraud Protection.

В этой статье описывается, как использовать трассировку событий в Microsoft Dynamics 365 Для защиты от мошенничества.

Функция трассировки событий в Microsoft Dynamics 365 Fraud Protection позволяет установить платформу телеметрии в режиме реального времени, которая является расширяемой и операционной за пределами портала. Каждое событие запланировано или активируется действием уровня пользователя или системы. Вы можете подписаться на интересующие вас события и передавать данные событий в Центры событий Azure или в хранилище Azure Blob Storage. Вы также можете одновременно запросить события из нескольких сеансов трассировки событий. Затем система передает события в хронологическом порядке.

События можно агрегировать и использовать для определения метрик, которые можно использовать для мониторинга затрат и использования служб и управления ими. События также можно использовать для разработки пользовательских отчетов, использующих данные транзакций, или для поддержания системных журналов действий, выполняемых на портале защиты от мошенничества (например, "пользователь A отредактировал список B по дате C"). При использовании соединителей Центров событий Azure, доступных в Microsoft Power Automate и Azure Logic Apps, можно также использовать данные, отправляемые в Центры событий Azure для оповещения или высоконастройанных рабочих процессов. Аналогично, с использованием хранения Azure Blob вы можете создать новую подписку, которая переносит все исторические данные в холодное хранилище для дальнейшего анализа.

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

Замечание

Клиенты отслеживания событий должны иметь подписку на дополнительные службы Azure, такие как Концентратор событий или хранилище BLOB-объектов. Обратитесь к руководителю учетной записи Майкрософт для получения сведений. Если у вас есть учетные данные глобального администратора Azure, войдите на портал Azure , чтобы определить доступные подписки.

Начало работы

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

  1. На портале защиты от мошенничества выберите "Данные" и выберите " Трассировка событий".

  2. Выберите "Создать подписку".

  3. Введите отображаемое имя подписки.

  4. Выберите расположение хранилища:

    1. Для Центров событий: введите строку подключения для экземпляра Центров событий в Azure Key Vault. Azure Key Vault должен находиться в том же клиенте, что и подписка на защиту от мошенничества. Предоставьте приложению Защиты от мошенничества секретный доступ к Azure Key Vault. Введите URL-адрес секретного идентификатора из Azure Key Vault на портале защиты от мошенничества. Для получения дополнительной информации см. Получение строки подключения для Event Hubs.
    2. Для хранилища BLOB-объектов: введите строку подключения для учетной записи хранения BLOB-объектов Azure в Azure Key Vault. Azure Key Vault должен находиться в том же клиенте, что и подписка на защиту от мошенничества. Предоставьте приложению Защиты от мошенничества секретный доступ к Azure Key Vault. На портале защиты от мошенничества введите URL-адрес идентификатора секрета из Azure Key Vault и имя контейнера, в котором находятся данные трассировки событий. Дополнительные сведения см. в разделе "Просмотр ключей доступа к учетной записи".
  5. Выберите Проверить подключение. После успешного тестирования подключения отображаются сведения, связанные с учетной записью, извлеченные из строки подключения в Azure Key Vault. Для Центров событий Azure эта информация, доступная только для чтения, включает пространство имен Центра событий и имя Центра событий. Для хранилища Blob-объектов Azure отображается имя учетной записи облачного хранения. Убедитесь, что эта информация соответствует учетной записи хранения, которую вы планируете использовать. Без успешного теста подключения кнопка "Создать " не включена.

  6. Выберите событие и просмотрите описание и пример JSON-пакета. Затем сохраните подписку, нажав кнопку "Создать". С этого момента события мгновенно отправляются в ваш экземпляр Event Hubs. Если вы выбрали хранилище Blob, процесс копирования для записи всех исторических данных начинается, и все события публикуются в ваш контейнер каждые 30 минут.

  7. Вернитесь на портал защиты от мошенничества, чтобы просмотреть количество для метрики события в час и убедитесь, что данные отправляются в Центры событий и хранилище BLOB. Метрики событий/час и сбоев/час показывают среднее значение за последние 24 часа.

    Подсказка

    Дополнительные сведения о мониторинге центров событий см. на портале Azure и настройке метрик. Дополнительные сведения см. в разделе метрики Центров событий Azure в Azure Monitor.

  8. Необязательно. Настройте собственный конвейер входящего трафика из Центров событий в Power BI. Сведения о начале разработки пользовательских отчетов см. в статье "Работа с Power BI".

  9. Необязательно. Подключение к центрам событий из Power Automate для определения пользовательских рабочих процессов. Дополнительные сведения см. в статье "Работа с Logic Apps" или Power Automate.

Схемы событий

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

События транзакций

Используйте транзакционные события для создания пользовательских систем показателей и автоматизированных рабочих процессов с помощью данных, доступных в вызовах API оценки и вызовах API, не связанных с оценкой. С помощью хранилища BLOB-объектов можно также скопировать данные из исторических вызовов API для создания хранилища данных для бизнеса. Полезные данные для этого события включают весь пакет запроса и ответа для каждого вызова API.

Пространство имен: FraudProtection.Observe.<Имя API> или FraudProtection.Assessment.<Имя API>
{
    "uniqueId": "unique event id and used to deduplicate events",
    "request": {
        //API request payload
    },
    "response": {
        //API response payload
    },
    "name": "FraudProtection.Observe.AccountLabel",
    "version": "1.0",
    "metadata": {
        "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
        "timestamp": "2020-09-25T03:46:53.3716978Z"
    }
}

События трассировки

События трассировки используются для отчетности и мониторинга производительности всех правил, которые содержат возвращаемый тип Trace(). Полезные данные для этого события включают стандартизированные поля, такие как имя правила, которое активировало событие, тип события, который коррелирует с типом оценки для этого правила, идентификатором корреляции и т. д. Затем можно отправлять пользовательские атрибуты с помощью пар "ключ:значение" в типе возврата Trace(), чтобы включить переменные из примера полезных данных, оценки риска и настраиваемых полей. Дополнительные сведения о том, как использовать Trace() в правилах для активации этих событий, см. в руководстве по языку правил функции наблюдения .

Пространство имен: "FraudProtection.Trace.Rule".
{
    "name": "FraudProtection.Trace.Rule",
    "version": "1.0",
    "metadata":
{
    "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
    "timestamp": "2020-06-10T23:43:33.4526859Z" 
}
    "ruleName": "Risk Score Policy",
    "eventType": "Purchase",
    "correlationId": "aaaa0000-bb11-2222-33cc-444444dddddd",
    "eventId": "e75e703c-1e54-4d41-af4b-a4c1b8866f02",
    "attributes":
{
      "example": "ManualReview” //key:value pairs defined in the Trace() return type
} 

    }

Оценочные мероприятия

Оценку и связанные события меток и наблюдений можно проследить до шлюзов событий и блобов.

Пространство имен: FraudProtection.Assessments.
{
    "request": "",
    "response": "",
    "eventId": "uniqueId",
    "assessmentApiName": "<your assessment api name>",
    "assessmentName": "<your assessment name>"
}
Пространство имен: FraudProtection.CaseManagement.Events.

Статус решения и метки, созданные в Системе управления делами.

{
	"name": "FraudProtection.CaseManagement.Events",
	"version": "1.0",
	"metadata": {
		"tenantId": "<your tenantID>",
		"timestamp": "2020-09-25T03:46:53.3716978Z"
	},
	"assessmentId": "<your assessment uniqueId>",
	"assessmentName": "<your assessment name>",
	"caseId": "uniqueId of the case record",
	"queueId": "uniqueId of the queue the case was routed to",
	"queueName": "name of the queue the case was routed to",
	"eventType": "<your assessment uniqueId>",
	"eventId": "<your assessment transaction uniqueId>",
	"creationDate": "creation datetime",
	"reviewStartDate": "review start datetime",
	"reviewedDate": "reviewed datetime",
	"decision": "decision of the review agent",
	"reason": "decision reason",
	"reasonNote": "decision note",
	"agentId": "uniqueId of the review agent",
	"agentName": "name of the review agent",
	"status": "status of the decision",
	"fraudFlag": "fraud flag (label) of the decision"
}
Пространство имен: FraudProtection.Observations.
{
    "request": "",
    "primaryEventId": "<assessment event id>",
    "observationApiName": "<your observation api name>",
    "observationName": "<your observation name>",
    "observationEventId": "<your observation event id>",
    "assessmentApiName": "<your assessment api name>",
    "assessmentName": "<your assessment name>"
}
Пространство имен: FraudProtection.Labels.
{
    "request": "",
    "labelEventId": "",
    "assessmentApiName": "<your assessment api name>",
    "assessmentName": "<your assessment name>"
}

События аудита

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

Пространство имен: FraudProtection.Audit.
"audit": {
    "entityId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
    "entityName": "Manual Review Rule",
    "entityType": "Rule",
    "operationName": "NewRule",
    "userId": "[email protected]"
},
"name": "FraudProtection.Audit",
"version": "1.0",
"metadata": {
    "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
    "timestamp": "2020-06-10T23:43:33.4526859Z"
}

Доступ к журналу аудита

Существует два способа доступа к журналам аудита. Можно настроить трассировку событий или отправить автоматически созданный журнал аудита, создав запрос в службу поддержки клиентов. Если вы решили не использовать трассировку событий и вместо этого отправьте запрос в службу поддержки, запрос в службу поддержки направляется группе инженеров защиты от мошенничества. Команда извлекает журналы и возвращает их вам. Журналы аудита записываются и хранятся в том же географическом регионе, в котором развернута среда. Журналы не могут быть изменены после их записи, а срок хранения журнала — 365 дней. Журналы старше 365 дней автоматически удаляются.

Существует пять событий, которые можно отслеживать с помощью журналов аудита. Эти события:

  • Пользователь впервые назначается на роль защиты от мошенничества.
  • Роль существующего пользователя обновляется.
  • Все назначения ролей удаляются для конкретного пользователя.
  • Пользователь принимает согласие FCRA.
  • Пользователь обновляет параметры средства повышения принятия транзакций (TAB). Любое изменение этих параметров считается обновлением.

События журналов активности

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

Пространство имен: FraudProtection.ActivityLog.
{
"eventId": "0c6e1948-75a9-4513-bb4c-4828c9a8ab05",
"operationType": "Create",
"resourceType": "Decision rule",
"resourceId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
"resourceName": "Rule Test",
"userId": "11bb11bb-cc22-dd33-ee44-55ff55ff55ff"
}

За "userID" следует операция и определенные поля типа ресурса.

Мониторинг событий

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

Пространство имен: FraudProtection.Monitoring.RequestLatencyMsDistribution.

Для вызовов API количество запросов и распределение задержки (в мс) отправляются каждые 20 секунд в этом событии. Эти события включают поля startTime и endTime, определяющие период агрегирования и имена измерений и значения, которые можно использовать для фильтрации метрик по мере необходимости.


{
"Index": [
             1
],
"BucketSamples": [
             2
],
"NumberOfBuckets": 10000,
"BucketSize": 10,
"MinimumValue": 0,
"CounterName": "RequestLatencyMsDistribution",
"DimensionNames": [
   "EnvironmentId",
   "TenantId",
   "ApiName",
   "ExperienceType",
   "IsTestRequest",
   "RequestType",
   "HttpRequestStatus",
   "HttpStatusCode"
],
"DimensionValues": [
   "aaaabbbb-0000-cccc-1111-dddd2222eeee",
   "aaaabbbb-0000-cccc-1111-dddd2222eeee",
   "v1.0/Observe/Create",
   "N/A",
   "False",
   "REALTIME",
   "Success",
   "200"
],
"StartTime": "2020-06-22T23:43:20",
"EndTime": "2020-06-22T23:43:40",
"Samples": 2,
"Min": 3,
"Max": 7,
"name": "FraudProtection.Monitoring.RequestLatencyMsDistribution",
"version": "1.0",
"metadata": {
   "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
   "timestamp": "2020-06-22T23:43:20.0947542Z"
}
}

Поле "Примеры" представляет количество запросов на API.

Пространство имен: FraudProtection.Monitoring.ExternalCalls

Это событие включает задержку (в мс) и код состояния HTTP каждого внешнего вызова, который активируется из правила <ссылка на документацию внешнего вызова>. Также предоставляются дополнительные параметры для правила и положения, инициирующего вызов.

Для внешних вызовов задержка (в мс) и метрики кода состояния HTTP отправляются с каждым запросом в этом событии. Дополнительные параметры для правила, инициирующего вызов, также предоставляются для улучшения процесса устранения неполадок, если вы заинтересованы в анализе производительности конкретного вызова.


{
    "name": "FraudProtection.Monitoring.ExternalCalls",
    "version": "1.0",
    "metadata": {
        "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
        "timestamp": "2020-06-10T23:43:33.4526859Z"
    },
    "externalCallName": "SampleExternalCall",
    "requestStatus": "Success",
    "httpStatusCode": 200,
    "correlationId": "bbbb1111-cc22-3333-44dd-555555eeeeee",
    "latencyMs": 123,
    "assessment": "PURCHASE",
    "rule": "SampleRule",
    "clause": "SampleClause"
}

Пространство имен: FraudProtection.Errors.ExternalCalls

Эти события регистрируют ошибки для каждого неудачного внешнего вызова и могут быть полезны для отладки любых проблем, которые могут возникнуть при выполнении внешних вызовов. Регистрируются полные запросы и ответы на вызов, а также задержка и правило и предложение, из которых был активирован вызов.


{
    "name": "FraudProtection.Errors.ExternalCalls",
    "version": "1.0",
    "metadata": {
        "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
        "timestamp": "2020-06-10T23:43:33.4526859Z"
    },
    "externalCallName": "SampleExternalCall",
    "requestStatus": "ResponseFailure",
    "httpStatusCode": 404,
    "correlationId": "bbbb1111-cc22-3333-44dd-555555eeeeee",
    "latencyMs": 123,
    "assessment": "PURCHASE",
    "rule": "SampleRule",
    "clause": "SampleClause",
    "response": "{}",
    "requestUri": "https://samplewebsite/sample",
    "requestBody": "{}"
}