Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Neste tutorial, crias um gatilho HTTP que executa uma verificação de conformidade numa aplicação contentor. Testa-o a partir do portal e da linha de comandos, e depois integra-o num pipeline de integração contínua e entrega contínua (CI/CD).
Tempo estimado: 10 minutos
Neste tutorial, você:
- Crie um gatilho HTTP com um pedido de verificação de conformidade.
- Teste o gatilho a partir do portal usando Run Now.
- Acione o gatilho a partir da linha de comando com um payload JSON.
- Integra o gatilho numa pipeline de CI/CD.
Pré-requisitos
- Azure SRE Agent no estado Running com pelo menos uma subscrição do Azure configurada.
- Azure CLI instalado (
azcomando) para testar a chamada do webhook.
Scenario
A sua equipa implementa revisões de aplicações container várias vezes por dia. Cada implementação deve cumprir os padrões de conformidade, com os limites corretos de recursos, as sondas de saúde configuradas e o conjunto de regras de entrada. Em vez de verificar manualmente após cada implementação, cria um disparador HTTP que o seu pipeline CI/CD aciona após cada implementação. O agente executa automaticamente a verificação de conformidade.
Gatilhos HTTP abertos
Para abrir os gatilhos HTTP, vá ao Builder>Gatilhos HTTP no menu de serviço.
Ponto de controlo: A página carrega-se com cartões de resumo (ativadores ativos: 0, Total de ativadores: 0, Total de operações: 0) e uma lista vazia de ativadores.
Passo 1: Criar o gatilho
Selecione Criar gatilho na barra de ferramentas. Abre-se a janela de diálogo Criar gatilho HTTP .
Preencha os seguintes campos no formulário.
Campo Valor Nome do gatilho Verificação de Conformidade de Aplicações de Contentores. Detalhes do disparador Foi implementada uma nova revisão da aplicação container. Faz uma verificação de conformidade na aplicação. Verifique se os limites de recursos (CPU/memória), sondas de saúde, configuração de entrada e regras de escalonamento estão corretamente configurados. Reporte quaisquer problemas encontrados. Detalhes da aplicação: {payload.app_name}no grupo{payload.resource_group}de recursos. Revisão:{payload.revision_name}.Nível de autonomia do agente Autónomo (por defeito) Agrupamento de mensagens para atualizações Novo tópico de chat para cada corrida. Deixe o subagente de resposta no seu padrão, a menos que queira que um subagente específico trate da verificação.
Selecione Criar Trigger.
Ponto de controlo: O gatilho aparece na lista com o estado Ligado (crachá verde). As cartas de resumo atualizam-se para mostrar um gatilho ativo.
Passo 2: Copiar o URL do gatilho
Selecione o nome do trigger Container App Compliance Check para abrir a visão de detalhes.
Vê os seguintes campos:
- URL do Acionador: endpoint Webhook com o botão Copiar
- Estado: Ativado
- Última chamada: Nunca
- Agrupamento de mensagens: Nova thread para cada execução
Selecione o botão Copiar ao lado do URL de ativação. Guarda a URL porque a usas no passo 4.
Ponto de controlo: Tem o URL do gatilho copiado. É semelhante a https://<your-agent>.sre.azure.com/api/v1/httptriggers/trigger/<trigger-id>.
Passo 3: Teste com Run Now
Selecione Executar trigger agora na barra de ferramentas. Esta ação executa o gatilho imediatamente, sem uma chamada externa.
Espere alguns segundos e depois selecione Atualizar lista para atualizar o histórico de execução.
Ponto de controlo: O histórico de execução mostra uma nova linha com um carimbo temporal, um tópico ligado e o estado de sucesso. Selecione o link do tópico para ver a resposta do agente.
O agente cria um tópico intitulado HTTP Trigger: Verificação de Conformidade da Aplicação Container. No interior, vê-se o cartão de execução com o plano de verificação de conformidade, seguido da investigação completa do agente e de uma tabela de veredictos com os resultados de conformidade.
Passo 4: Chamar o gatilho a partir da linha de comandos
Agora testa com uma carga útil real, da mesma forma que o teu pipeline CI/CD faria. Abra um terminal e execute:
# Get an ARM token (use the SRE Agent app ID as the resource)
TOKEN=$(az account get-access-token --resource 59f0a04a-b322-4310-adc9-39ac41e9631e --query accessToken -o tsv)
# Call the trigger with container app deployment details
curl -X POST \
"<YOUR_TRIGGER_URL>" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"app_name": "checkout-api",
"resource_group": "rg-production",
"revision_name": "checkout-api--v3",
"deployed_by": "github-actions",
"image": "myregistry.azurecr.io/checkout-api:v3.2.1"
}'
Substitui <YOUR_TRIGGER_URL> pelo URL que copiaste no passo 2.
O que acontece: O agente recebe o seu prompt com {payload.app_name}, {payload.resource_group}, e {payload.revision_name}, que deverão ser substituídos pelos valores reais. Campos que não correspondem a um marcador de posição (como deployed_by e image) são acrescentados como contexto JSON bruto.
A resposta é devolvida imediatamente com HTTP 202.
{
"message": "HTTP trigger execution initiated",
"executionTime": "2026-03-13T10:30:00Z",
"threadId": "thread-abc123",
"success": true
}
Ponto de controlo: Volte ao portal e selecione Atualizar lista na vista de detalhes. Deverias ver uma segunda execução na história. Esta é da chamada externa. Selecione o link do tópico para ver a verificação de conformidade do agente com os detalhes reais da aplicação preenchidos.
Passo 5: Integre com o seu fluxo de trabalho
Adicione a chamada de gatilho ao passo pós-implementação do seu pipeline CI/CD. Aqui está um exemplo de Ações no GitHub:
- name: Trigger SRE Agent compliance check
if: success()
run: |
TOKEN=$(az account get-access-token --resource 59f0a04a-b322-4310-adc9-39ac41e9631e --query accessToken -o tsv)
curl -s -X POST "${{ secrets.SRE_TRIGGER_URL }}" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"app_name": "${{ env.APP_NAME }}",
"resource_group": "${{ env.RESOURCE_GROUP }}",
"revision_name": "${{ env.REVISION_NAME }}",
"deployed_by": "${{ github.actor }}",
"commit": "${{ github.sha }}"
}'
Guarde o URL do seu gatilho como um segredo do GitHub (SRE_TRIGGER_URL). Nunca o codifiquem diretamente no vosso ficheiro de workflow.
Passo 6: Limpar recursos
Se já não precisares do gatilho, apaga-o:
- Vá para Builder>gatilhos HTTP.
- Seleciona a caixa de seleção do gatilho.
- Selecione Eliminar.