Gerir regras de monitorização com o Envio Automático do Windows
Para implementações iniciadas pelo Windows Autopatch, pode utilizar uma regra de monitorização para configurar alertas e ações automatizadas com base em sinais de implementação.
As regras de monitorização são compatíveis com implementações de Windows 10 atualizações de funcionalidades.
Passo 1: Criar uma regra de monitorização
Pode criar uma regra de monitorização para uma implementação ao configurar as definições de monitorização. Cada implementação pode ter uma regra de monitorização ativa de cada vez.
As regras de monitorização consistem em três componentes:
- sinal: o tipo de problema de atualização a monitorizar.
- limiar: quando esta percentagem de dispositivos emite o sinal especificado, a regra de monitorização é acionada.
- ação: a ação a tomar quando a regra de monitorização é acionada.
O exemplo seguinte mostra como criar uma regra de monitorização para uma implementação ao mesmo tempo que criar a implementação.
Solicitação
POST https://graph.microsoft.com/beta/admin/windows/updates/deployments
Content-type: application/json
{
"@odata.type": "#microsoft.graph.windowsUpdates.deployment",
"content": {
"@odata.type": "#microsoft.graph.windowsUpdates.catalogContent",
"catalogEntry": {
"@odata.type": "#microsoft.graph.windowsUpdates.featureUpdateCatalogEntry",
"id": "catalog/entries/1"
}
},
"settings": {
"@odata.type": "microsoft.graph.windowsUpdates.deploymentSettings",
"monitoring": {
"monitoringRules": [
{
"signal": "rollback",
"threshold": 5,
"action": "pauseDeployment"
}
]
}
}
}
Resposta
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.windowsUpdates.deployment",
"id": "b5171742-1742-b517-4217-17b5421717b5",
"state": {
"@odata.type": "microsoft.graph.windowsUpdates.deploymentState",
"value": "offering",
"reasons": [
{
"@odata.type": "microsoft.graph.windowsUpdates.deploymentStateReason",
"value": "offeringByRequest"
}
],
"requestedValue": "none",
"effectiveSinceDate": "String (timestamp)"
},
"content": {
"@odata.type": "#microsoft.graph.windowsUpdates.catalogContent"
}
},
"settings": {
"@odata.type": "microsoft.graph.windowsUpdates.deploymentSettings",
"monitoring": {
"monitoringRules": [
{
"@odata.type": "#microsoft.graph.windowsUpdates.monitoringRule",
"signal": "rollback",
"threshold": 5,
"action": "pauseDeployment"
}
]
},
"schedule": null,
"userExperience": null
},
"createdDateTime": "String (timestamp)",
"lastModifiedDateTime": "String (timestamp)"
}
Passo 2: Retomar uma implementação que foi colocada em pausa por uma regra de monitorização
Quando uma regra de monitorização é acionada, proporciona a oportunidade de investigar problemas de atualização que possam ter originado a sua aplicação. Após a investigação, poderá querer retomar a implementação. Existem duas formas de o fazer: remover a regra de monitorização ou atualizar o limiar da regra de monitorização.
Exemplo: Retomar a implementação ao remover uma regra de monitorização
Quando uma regra de monitorização que coloca em pausa a implementação é acionada, uma forma de retomar a implementação é remover a regra.
O exemplo seguinte mostra como retomar a implementação ao remover a regra.
Solicitação
PATCH https://graph.microsoft.com/beta/admin/windows/updates/deployments/b5171742-1742-b517-4217-17b5421717b5
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.windowsUpdates.deployment",
"settings": {
"@odata.type": "microsoft.graph.windowsUpdates.deploymentSettings",
"monitoring": {
"monitoringRules": []
}
}
}
Resposta
HTTP/1.1 202 Accepted
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.windowsUpdates.deployment",
"id": "b5171742-1742-b517-4217-17b5421717b5",
"state": {
"@odata.type": "microsoft.graph.windowsUpdates.deploymentState",
"value": "offering",
"reasons": [
{
"@odata.type": "microsoft.graph.windowsUpdates.deploymentStateReason",
"value": "offeringByRequest"
}
],
"requestedValue": "none",
"effectiveSinceDate": "String (timestamp)"
},
"content": {
"@odata.type": "#microsoft.graph.windowsUpdates.catalogContent",
}
},
"settings": {
"@odata.type": "microsoft.graph.windowsUpdates.deploymentSettings",
"monitoring": {
"monitoringRules": []
},
"schedule": null,
"userExperience": null
},
"createdDateTime": "String (timestamp)",
"lastModifiedDateTime": "String (timestamp)"
}
Exemplo: Retomar a implementação ao atualizar um limiar de regra de monitorização
Outra forma de retomar a implementação é alterar o limiar da regra de monitorização relevante. Quando o novo limiar for atingido, a ação (neste caso, pauseDeployment
) será acionada novamente.
O exemplo seguinte mostra como retomar a implementação ao alterar o limiar da regra de monitorização. Este exemplo também ilustra como editar qualquer regra de monitorização existente, mesmo que o respetivo limiar ainda não tenha sido atingido, bem como como criar uma regra de monitorização numa implementação que não tenha uma.
Solicitação
PATCH https://graph.microsoft.com/beta/admin/windows/updates/deployments/b5171742-1742-b517-4217-17b5421717b5
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.windowsUpdates.deployment",
"settings": {
"@odata.type": "microsoft.graph.windowsUpdates.deploymentSettings",
"monitoring": {
"monitoringRules": [
{
"signal": "rollback",
"threshold": 10,
"action": "pauseDeployment"
}
]
}
}
}
Resposta
HTTP/1.1 202 Accepted
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.windowsUpdates.deployment",
"id": "b5171742-1742-b517-4217-17b5421717b5",
"state": {
"@odata.type": "microsoft.graph.windowsUpdates.deploymentState",
"value": "offering",
"reasons": [
{
"@odata.type": "microsoft.graph.windowsUpdates.deploymentStateReason",
"value": "offeringByRequest"
}
],
"requestedValue": "none",
"effectiveSinceDate": "String (timestamp)"
},
"content": {
"@odata.type": "#microsoft.graph.windowsUpdates.catalogContent",
}
},
"settings": {
"@odata.type": "microsoft.graph.windowsUpdates.deploymentSettings",
"monitoring": {
"monitoringRules": [
{
"@odata.type": "#microsoft.graph.windowsUpdates.monitoringRule",
"signal": "rollback",
"threshold": 10,
"action": "pauseDeployment"
}
]
},
"schedule": null,
"userExperience": null
},
"createdDateTime": "String (timestamp)",
"lastModifiedDateTime": "String (timestamp)"
}