---
name: azion-sirva-uma-pagina-de-status-com-uma-funcao
description: >-
  Sirva uma página de status ou de erro com a função Hello World em uma aplicação, com uma instância e uma regra do Rules Engine, sem ir à origem.
---

# Sirva uma página de status com uma função

Você pode servir uma página de status ou de erro com a função Hello World em uma aplicação, pelo Azion Console. A função responde na infraestrutura distribuída da Azion, então a requisição nunca chega à sua origem. Para instalar Hello World pelo Azion Marketplace com um código de status e um body, consulte [Instale a integração Hello World](/pt-br/documentacao/guias/desenvolvimento-de-aplicacoes/integracoes/hello-world/).

Uma página de status informa a situação de um serviço, para que você o monitore e avise os seus usuários. O exemplo desta página responde às requisições para `www.myapplication.com/api_service` com um aviso de que o serviço está temporariamente indisponível. Pelo [Data Stream](/pt-br/documentacao/plataforma/data-stream/), você também pode enviar os registros de acesso da página a um SIEM (Security Information and Event Management), Big Data ou log servers e analisar os dados lá.

---

## Pré-requisitos

- Acesso ao Azion Console. Para entrar, consulte [Como acessar o Azion Console](/pt-br/documentacao/guias/plataforma/conta-e-billing/como-acessar-o-azion-console/).
- Uma [aplicação](/pt-br/documentacao/plataforma/applications/) que recebe as requisições da página de status.
- Application Accelerator e [Functions](/pt-br/documentacao/plataforma/functions/) ativados na aplicação. O behavior *Run Function* exige os dois. Para mais informações, consulte [Rules Engine para Applications](/pt-br/documentacao/plataforma/applications/rules-engine/#run-function).

---

## Crie a instância da função

Uma aplicação executa uma função por meio de uma instância, e a instância passa os seus Args à função. A Azion fornece a função Hello World, e os Args dela definem o código de status HTTP e a mensagem da resposta. A instância do exemplo usa estes Args:

```json
{
    "param":{
        "http_status": 503,
        "body": "We are working hard to serve you better!"
    }
}
```

Para criar a instância no Azion Console:

1. **Abra a aplicação**

   Acesse [Azion Console](https://console.azion.com/) > **Applications** e selecione a aplicação que serve a página de status.

2. **Vá para a aba Functions Instances**

3. **Selecione + Function Instance**

4. **Dê um nome à instância**

   Digite um nome que a identifique. Por exemplo: `MyHelloWorld`.

5. **Selecione a função**

   No campo **Function**, selecione *Hello World*. O campo **Code** mostra o código da função apenas para consulta.

6. **Digite os Args**

   Na aba **Args**, digite o JSON com o seu código de status e a sua mensagem.

7. **Selecione Save**

A instância `MyHelloWorld` está na aplicação. Ela só roda depois que uma regra do Rules Engine a seleciona.

---

## Adicione a regra que executa a instância

Uma regra do Rules Engine define os critérios que uma requisição precisa atender e os behaviors que rodam quando ela atende. Você pode adicionar o behavior à Default Rule ou criar uma nova regra. Aqui, uma nova regra executa `MyHelloWorld` quando a URI começa com `/api_service`.

Para criar a regra no Azion Console:

1. **Abra a aplicação**

   Acesse [Azion Console](https://console.azion.com/) > **Applications** e selecione a aplicação que serve a página de status.

2. **Selecione a aba Rules Engine**

3. **Selecione + Rule**

4. **Dê um nome à regra**

   Digite um nome para a regra.

5. **Defina o critério**

   Na seção **Criteria**, selecione `${uri}` como variável e `starts_with` como operador, e digite `/api_service` como argumento.

6. **Adicione o behavior**

   Na seção **Behaviors**, selecione *Run Function* e depois selecione `MyHelloWorld`.

7. **Selecione Save**

Uma requisição para `www.myapplication.com/api_service` retorna o código de status `503` com o body `We are working hard to serve you better!`.

---

## Próximos passos

- [Envie registros de requisições e do WAF a um SIEM](/pt-br/documentacao/guias/plataforma/observabilidade/enviar-registros-de-requisicoes-e-waf-a-um-siem.md): Envie os registros de acesso da aplicação a um SIEM pelo Data Stream.
- [Execute uma função em uma aplicação](/pt-br/documentacao/guias/desenvolvimento-de-aplicacoes/functions-e-runtime/funcoes-serverless.md): Adicione a regra que executa uma instância de função pelo Azion Console ou pela Azion API.
- [Instâncias de função](/pt-br/documentacao/plataforma/applications/functions-instances.md): Veja todos os campos de uma instância e o limite dos seus Args.
- [Functions](/pt-br/documentacao/plataforma/functions.md): Escreva a sua própria função para servir uma página.
