Partilhar via


Notificações externas

Aplica-se a: Configuration Manager (ramo atual)

Num ambiente de TI complexo, pode ter um sistema de automatização como Azure Logic Apps. Os clientes utilizam estes sistemas para definir e controlar fluxos de trabalho automatizados para integrar vários sistemas. Pode integrar o Gestor de Configuração num sistema de automatização separado através das APIs SDK do produto. Mas este processo pode ser complexo e desafiante para profissionais de TI sem um fundo de desenvolvimento de software.

A partir da versão 2107, pode permitir ao site enviar notificações para um sistema ou aplicação externo. Esta funcionalidade simplifica o processo utilizando um método baseado em serviços web. Configura as subscrições para enviar estas notificações. Estas notificações são em resposta a eventos específicos e definidos à medida que ocorrem. Por exemplo, regras de filtro de mensagens de estado.

Nota

O sistema ou aplicação externa define e fornece os métodos que esta funcionalidade chama.

Ao configurar esta funcionalidade, o site abre um canal de comunicação com o sistema externo. Este sistema pode então iniciar um fluxo de trabalho complexo ou uma ação que não existe no Gestor de Configuração.

Estas notificações utilizam o seguinte esquema normalizado:

{
    "properties": {
        "EventID": {
            "type": "integer"
        },
        "EventName": {
            "type": "string"
        },
        "EventPayload": {
            "type": "string"
        },
        "MessageID": {
            "type": "string"
        },
        "ServerName": {
            "type": "string"
        },
        "SiteCode": {
            "type": "string"
        },
        "Source": {
            "type": "string"
        }
    },
    "type": "object"
}

Pré-requisitos

  • O ponto de ligação de serviço do site tem de estar em modo online. Para mais informações, consulte Sobre o ponto de ligação de serviço.

  • Atualmente, esta funcionalidade apenas suporta Azure Logic Apps como o sistema externo. É necessária uma subscrição ativa do Azure com direitos para criar uma aplicação lógica.

  • A função de segurança completa do administrador com todas as possibilidades de segurança no Gestor de Configuração.

  • Nesta versão, para criar os objetos no Gestor de Configuração, é necessário utilizar o script PowerShell SetupExternalServiceNotifications.ps1. Utilize a seguinte amostra de script para obter corretamente o script PowerShell para esta função:

    $FileName = ".\SetupExternalServiceNotifications.ps1"
    Invoke-WebRequest https://aka.ms/cmextnotificationscript -OutFile $FileName
    (Get-Content $FileName -Raw).Replace("`n","`r`n") | Set-Content $FileName -Force
    (Get-Content $FileName -Raw).TrimEnd("`r`n") | Set-Content $FileName -Force
    

    Nota

    SetupExternalServiceNotifications.ps1 é digitalmente assinado pela Microsoft. Esta amostra de script descarrega o ficheiro e corrige as quebras de linha para preservar a assinatura digital.

Crie uma app lógica Azure e fluxo de trabalho

Utilize o seguinte processo para criar uma aplicação de amostra em Azure Logic Apps para receber a notificação do Gestor de Configuração.

Nota

Este processo é fornecido como um exemplo para ajudá-lo a começar. Não se destina a ser usado na produção.

  1. Inicie sessão no portal do Azure.

  2. Na caixa de pesquisa Azure, insira logic apps e selecione Aplicações Lógicas.

  3. Selecione Adicionar e escolher Consumo. Esta ação cria uma nova aplicação lógica.

  4. No separador Basics, especifique os detalhes do projeto conforme necessário para o seu ambiente: nome de subscrição, grupo de recursos, nome de aplicativos lógicos e região.

  5. Selecione Rever + criar. Na página de validação, confirme os detalhes que forneceu e selecione Criar.

  6. Nos próximos passos, selecione Ir para o recurso.

  7. Na secção a iniciar com um gatilho comum, selecione Quando receber um pedido HTTP.

  8. Na parte inferior do editor de gatilho, selecione Utilize a carga útil da amostra para gerar esquema.

  9. Colar o seguinte esquema de amostra:

    {
        "EventID":0,
        "EventName":"",
        "SiteCode":"",
        "ServerName":"",
        "MessageID":0,
        "Source":"",
        "EventPayload":""
    }
    
  10. Selecione Fazer e, em seguida, selecione Guardar.

  11. Copie o URL gerado para a aplicação lógica. Utilizará este URL mais tarde quando criar a subscrição no Gestor de Configuração.

  12. Para adicionar um novo passo no designer, selecione + Novo Passo. Escolha uma ação apropriada quando receber uma notificação do Gestor de Configuração. Por exemplo:

    Inscreva-se se necessário e complete as informações necessárias para a ação. Para obter mais informações, consulte as aplicações lógicas Create quickstart na documentação Azure Logic Apps.

Criar um evento no Gestor de Configuração

Existem dois tipos de eventos que são atualmente suportados:

  • O site eleva uma mensagem de estado que corresponde às condições especificadas numa regra do filtro de estado.

  • Um utilizador solicita a aprovação de uma aplicação no Software Center.

Mensagem de estado

  1. No servidor do site, executar SetupExternalServiceNotifications.ps1. Já que está a executá-lo no servidor do site, insira y para continuar.

  2. Selecione a opção 2 para criar uma nova regra do filtro de estado.

  3. Especifique um nome para a nova regra do filtro de estado.

  4. Selecione critérios de correspondência de mensagens para a regra e especifique valores que correspondam. Especifique 0 para não utilizar um critério.

    Estão disponíveis os seguintes critérios:

    • Fonte: Cliente, Fornecedor de SMS, Servidor de Site
    • Código do site
    • Sistema
    • Componente
    • Tipo de mensagem: Marco, Detalhe, Auditoria
    • Gravidade: Informação, Aviso, Erro
    • ID da Mensagem
    • Propriedade
    • Valor patrimonial

    Para obter mais informações sobre critérios para as regras de mensagem de estado, consulte utilizar o sistema de estado.

    Importante

    Tenha cuidado com o tipo de regra do filtro de estado que cria. Para notificações externas, o site pode processar 300 mensagens de estado a cada cinco minutos. Se a sua regra permitir mais mensagens do que este limite, irá causar um atraso no site. Crie regras com filtros estreitos para cenários específicos. Evite regras genéricas que permitam muitas mensagens.

  5. Reexame o script PowerShell. Selecione a opção 3 para criar uma nova subscrição.

  6. Especifique um nome e descrição para a subscrição. Em seguida, especifique o URL da aplicação lógica que copiou anteriormente a partir do portal Azure.

  7. Selecione a nova regra do filtro de estado.

  8. Selecione 0 para sair do script.

  9. Despolete um evento para o componente do site que escolheu para a regra do filtro de estado.

    Por exemplo, utilize o Gestor de Serviço de Gestor de Configuração para reiniciar o componente.

Aprovação da app

Nota

Este tipo de evento requer uma aplicação que requer aprovação e é implantada numa coleção de utilizador. Para obter mais informações, consulte implementar aplicações e aprovar aplicações.

  1. No servidor do site, executar SetupExternalServiceNotifications.ps1. Já que está a executá-lo no servidor do site, insira y para continuar.

  2. Selecione a opção 3 para criar uma nova subscrição.

  3. Especifique um nome e descrição para a subscrição. Em seguida, especifique o URL da aplicação lógica que copiou anteriormente a partir do portal Azure.

  4. Selecione o evento apropriado para um pedido de inscrição.

  5. Selecione 0 para sair do script.

  6. Num dispositivo gerido, envie um pedido de aprovação de aplicações do Software Center. Para obter mais informações, consulte o guia do utilizador do Software Center.

Monitorizar o fluxo de trabalho

Em cinco minutos, o evento desencadeia o fluxo de trabalho da aplicação lógica. Verifique o estado do fluxo de trabalho no portal Azure. Navegue para a página de histórico de Runs da aplicação lógica.

Para obter mais informações, consulte o estado de execução do Monitor, reveja o histórico do gatilho e crie alertas para Azure Logic Apps.

Resolução de problemas

Utilize os seguintes ficheiros de registo do Gestor de Configuração no servidor do site para ajudar a resolver este processo:

  • ExternalNotificationsWorker.log: Verifique se a fila foi processada e as notificações são enviadas para o sistema externo.
  • statmgr.log: Verifique se as regras do filtro de estado foram processadas sem erros

Remover uma subscrição

Se precisar de eliminar uma subscrição, utilize o seguinte processo:

  1. Execute o script SetupExternalServiceNotifications.ps1 com a opção 1 de listar as subscrições disponíveis. Note o ID de assinatura, que é um valor inteiro.

  2. Utilize a API de Subscrição de Notificações do serviço de administração. Faça uma chamada DELETE para o URI https://<SMSProviderFQDN>/AdminService/v1.0/NotificationSubscription/<Subscription_ID> .

    Para obter mais informações, consulte Como utilizar o serviço de administração no Gestor de Configuração.

Depois de remover a subscrição, o site não envia notificações para o sistema externo.

Problemas conhecidos

Se criar uma regra de filtro de estado,verá-a na lista de regras do filtro status do site na consola 'Gestor de Configuração'. Se escoar uma alteração no separador Ações das propriedades da regra, a notificação externa não funcionará.

Na versão 2107, depois de recuperar um site da administração central (CAS), elimine e recrie a subscrição.

Dica

Antes de remover um CAS,recrie as subscrições no local primário da criança.

Uso do script

Quando executa SetupExternalServiceNotifications.ps1, deteta se está a funcionar num servidor do site:

  • Y: Continue no servidor atual
  • N: Especificar o FQDN de um servidor de site para utilizar

Se o script não detetar um servidor do site, ele solicita um FQDN.

Estão então disponíveis as seguintes ações:

  • 0: Saltar/continuar
  • 1: Lista de assinaturas disponíveis
  • 2: Criar uma regra de filtro de estado para expor mensagens de estado
  • 3: Criar uma subscrição. Esta opção só está disponível para o site de nível superior.

Nota

Este script só é suportado para sites que executam a versão 2107 ou posterior.

Passos seguintes

Utilizar o sistema de estado

Configurar alertas