Получение событий хаоса
Получает следующий сегмент событий службы Chaos на основе маркера продолжения или диапазона времени.
Для получения следующего сегмента событий службы Chaos можно указать маркер продолжения. Чтобы получить начало нового сегмента событий службы Chaos, можно указать в системе UTC время начала и окончания диапазона времени. В одном и том же вызове запрещено одновременно указывать маркер продолжения и диапазон времени. Когда в службе Chaos происходит более 100 событий, то события Chaos возвращаются несколькими сегментами. Каждый сегмент содержит не более 100 событий Chaos. Для получения следующего сегмента делается вызов этого API с помощью токена продолжения.
Запрос
Метод | Универсальный код ресурса (URI) запроса |
---|---|
GET | /Tools/Chaos/Events?api-version=6.2&ContinuationToken={ContinuationToken}&StartTimeUtc={StartTimeUtc}&EndTimeUtc={EndTimeUtc}&MaxResults={MaxResults}&timeout={timeout} |
Параметры
Имя | Тип | Обязательно | Расположение |
---|---|---|---|
api-version |
строка | Да | Запрос |
ContinuationToken |
строка | Нет | Запрос |
StartTimeUtc |
строка | Нет | Запрос |
EndTimeUtc |
строка | Нет | Запрос |
MaxResults |
integer (int64) | Нет | Запрос |
timeout |
integer (int64) | Нет | Запрос |
api-version
Тип: string
Обязательный: да
По умолчанию: 6.2
Версия API. Этот параметр является обязательным и его значение должно быть "6.2".
Версия REST API Service Fabric основана на версии среды выполнения, в которой api был представлен или был изменен. Среда выполнения Service Fabric поддерживает несколько версий API. Эта версия является последней поддерживаемой версией API. Если передается более ранжная версия API, возвращаемый ответ может отличаться от ответа, описанного в этой спецификации.
Кроме того, среда выполнения принимает любую версию, которая выше последней поддерживаемой версии, вплоть до текущей версии среды выполнения. Поэтому если последняя версия API — 6.0, а среда выполнения — 6.1, среда выполнения будет принимать версию 6.1 для этого API. Однако поведение API будет выполняться в документе версии 6.0.
ContinuationToken
Тип: string
Обязательный: нет
Параметр маркера продолжения используется для получения следующего набора результатов. Маркер продолжения с непустым значением добавляется в ответ API, когда результаты из системы не помещаются в один ответ. Когда это значение передается в следующем вызове API, API возвращает следующий набор результатов. Если результаты отсутствуют, маркер продолжения не будет содержать значение. Значение этого параметра не должно быть указано в формате URL-адреса.
StartTimeUtc
Тип: string
Обязательный: нет
Время файла Windows, представляющее время начала периода, за который создается отчет Chaos. Дополнительные сведения см. в описании метода DateTime.ToFileTimeUtc.
EndTimeUtc
Тип: string
Обязательный: нет
Время файла Windows, представляющее время окончания периода, за который создается отчет Chaos. Дополнительные сведения см. в описании метода DateTime.ToFileTimeUtc.
MaxResults
Тип: integer (int64)
Обязательный: нет
По умолчанию: 0
InclusiveMinimum: 0
Максимальное количество результатов, возвращаемых в результате страничного запроса. Этот параметр определяет максимальное число возвращаемых результатов. Возвращаемых результатов может быть меньше, чем указанное максимальное количество результатов, если они не помещаются в сообщении согласно ограничениям максимального размера сообщения, определенным в конфигурации. Если этот параметр равен нулю или не указан, то результат страничного запроса содержит максимальное число результатов, помещающееся в возвращаемом сообщении.
timeout
Тип: integer (int64)
Обязательный: нет
По умолчанию: 60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
Время ожидания сервера до выполнения операции в секундах. Время ожидания — промежуток времени, в течение которого клиент готов ждать выполнения запрошенной операции. Значение по умолчанию для этого параметра — 60 секунд.
Ответы
Код состояния HTTP | Описание | схеме ответа. |
---|---|---|
200 OK; | Следующий сегмент событий Chaos. |
ChaosEventsSegment |
Все остальные коды состояния | Подробный ответ об ошибке. |
FabricError |
Примеры
Получение событий Chaos по заданному диапазону времени
В этом примере показано, как получить события Chaos в одном ответном сообщении без необходимости разбиения по страницам с помощью параметра ContinuationToken.
Запрос
GET http://localhost:19080/Tools/Chaos/Events?api-version=6.2&StartTimeUtc=0&EndTimeUtc=3155378975999999999
Ответ 200
Текст
{
"ContinuationToken": "",
"History": [
{
"ChaosEvent": {
"Kind": "Started",
"TimeStampUtc": "2017-04-14T04:27:19.049Z",
"ChaosParameters": {
"MaxClusterStabilizationTimeoutInSeconds": "30",
"MaxConcurrentFaults": "3",
"WaitTimeBetweenIterationsInSeconds": "10",
"WaitTimeBetweenFaultsInSeconds": "1",
"TimeToRunInSeconds": "3600",
"EnableMoveReplicaFaults": true,
"ClusterHealthPolicy": {
"ConsiderWarningAsError": true,
"MaxPercentUnhealthyNodes": "0",
"MaxPercentUnhealthyApplications": "10",
"ApplicationTypeHealthPolicyMap": [
{
"Key": "myapp",
"Value": "3"
}
]
},
"Context": {
"Map": {
"k1": "v1",
"k2": "v2",
"k3": "v5"
}
}
}
}
},
{
"ChaosEvent": {
"Kind": "ExecutingFaults",
"TimeStampUtc": "2017-04-14T04:27:20.667Z",
"Faults": [
"ActionType: RestartReplica, ServiceUri: fabric:/TestApp1/PersistServ_6R_1, PartitionId: 6a91b09a-bd76-45da-afaa-ed0fd9bfe7d2, ReplicaId: 131366172775684622",
"ActionType: CodePackageRestart, NodeName: N0050, ApplicationName: fabric:/TestApp1, ServiceManifestName: SP1, ServiceManifestName: , CodePackageName: CP1.",
"ActionType: RestartReplica, ServiceUri: fabric:/TestApp1/PersistServ_6R_3, PartitionId: baa3a51e-5c42-435e-89d3-6e97b2164661, ReplicaId: 131366172988968762"
]
}
}
]
}