1 of 20
2 of 20
3 of 20
4 of 20
5 of 20
6 of 20
7 of 20
8 of 20
9 of 20
10 of 20
11 of 20
12 of 20
13 of 20
14 of 20
15 of 20
16 of 20
17 of 20
18 of 20
19 of 20
20 of 20

doc

Real-Time Events

Real-Time Events é um módulo do Observe que permite que você visualize dados de seus Produtos e Serviços Azion em tempo real. Você pode utilizar o Real-Time Events para realizar buscas complexas e explorar os dados de suas aplicações na Azion.

Para acessar o Real-Time Events, prossiga conforme a seguir:

  1. Acesse o Real-Time Manager.
  2. Clique no Products Menu no canto superior esquerdo.
  3. Selecione Real-Time Events na seção Observe.

Você vizualizará os seguintes campos:

  1. Data Sources
  2. Time Filter
  3. Filter by
  4. Refresh

1. Data Sources

A primeira etapa para você explorar seus dados é a escolha do Data Source, que representa o Produto ou Serviço Azion que gerou os eventos.

Para submeter sua requisição de busca, você deve selecionar o Data Source de onde deseja coletar os eventos.

A Azion disponibiliza os seguintes Data Sources:

Data Streaming

Caso contratado o produto Data Streaming, o data source Data Streaming apresentará os dados de depuração de envio ao Endpoint configurado.

Variável Descrição
$client_id Identificador único de cliente Azion.
$data_streamed Quantidade de bytes transmitidos no streaming (tentativa/coleta/envio).
$endpoint_type Tipo do Endpoint configurado para o envio dos dados, tais como: HTTP/HTTPS Post, Apache Kafka, S3, etc.
$job_name Identificação exclusiva da Azion para nomear o tipo de streaming criado (Ex.: Data Streaming HTTP, Data Streaming WAF).
$status_code O status code da requisição, por exemplo: 200. Veja mais detalhes aqui.
$streamed_lines Quantidade total de linhas enviadas para o endpoint selecionado.
$time Data e hora do envio dos dados para o endpoint configurado, por exemplo: “01 June, 2021, 12:21:19”.
$url A URL para onde os dados do cliente foram enviados/coletados.

Edge Applications

Apresenta os dados de requisições realizadas às suas edge applications na Azion.

Variável Descrição
$asn AS Number refere-se à Alocação de Número de Sistema Autônomo que corresponde a um grupo de redes de endereços IP gerenciadas por uma ou mais operadoras de rede que têm uma política de roteamento clara e única. Consultando o serviço ASN Whois para LACNIC, o ASN da Azion, por exemplo, é AS52580. Escolha o tipo de ASN para representar uma lista de grupos de AS, preenchendo um endereço por linha, com apenas o número sem o prefixo.
$bytes_sent Bytes enviados para o usuário, incluindo cabeçalho e corpo.
$client Identificador único de cliente Azion.
$city Nome da cidade do cliente remoto, por exemplo “Chicago”, ”Boston”. Detecção por geolocalização de endereço IP.
$country Nome do país do cliente remoto, por exemplo “Russian Federation”, “United States”. Detecção por geolocalização de endereço IP.
$host Informação de Host enviada na linha de requisição; ou campo Host do cabeçalho HTTP.
$http_referrer Informação da última página a qual o usuário estava, antes de realizar a requisição.
$http_user_agent A identificação da aplicação que realizou a requisição, por exemplo: Mozilla/50 (Windows NT 100; Win64; x64).
$proxy_status Código HTTP quando o erro é gerado pelo Nginx, quando nenhuma resposta é obtida do upstream. Ex: ‘ 520’.
$remote_addr Endereço IP da origem que gerou a requisição.
$remote_port Porta remota da origem que gerou a requisição.
$request_id Identificador único da requisição. Ex: ‘5f222ae5938482c32a822dbf15e19f0f’.
$request_length Tamanho da requisição, incluindo a linha de request, cabeçalhos e corpo.
$request_method Método da requisição; usualmente “GET” ou “POST”.
$request_time Tempo de processamento da requisição com resolução de milisegundos.
$request_uri URI da requisição realizada pelo usuário, sem a informação do Host e Protocolo.
$scheme Esquema da requisição: “http” ou “https”.
$sent_http_content_type Cabeçalho “Content-Type” enviado na resposta da origem.
$server_addr Endereço IP do servidor que recebeu a requisição.
$server_port Porta remota do servidor que recebeu a requisição.
$server_protocol O protocolo da conexão estabelecida, geralmente “HTTP/1.1” ou “HTTP/2.0”.
$ssl_cipher String de cifra utilizada para estabelecimento de conexão SSL.
$ssl_protocol O protocolo de uma conexão SSL estabelecida, por exemplo “TLS v1.2”.
$state Nome do estado do cliente remoto, por exemplo: “RS”, “SP”. Detecção de geolocalização do endereço IP.
$status O código do status da requisição, por exemplo: 200.
$time Data e hora da requisição, por exemplo “01 June, 2021, 12:21:19”.
$traceback Informa os nomes das Rules Engine da Edge Application e do Edge Firewall executadas pela requisição.
$upstream_addr Endereço e porta upstream. Ex: ‘192.168.1.1:80’.
$upstream_bytes_received Quantidade de bytes recebidos pela Edge da origem, caso o conteúdo não esteja em cache.
$upstream_cache_status Status de cache do Edge. Pode assumir os valores “MISS”, “BYPASS”, “EXPIRED”, “STALE”, “UPDATING”, “REVALIDATED” ou “HIT”.
$upstream_response_time Tempo em milisegundos para o Edge receber toda a resposta da origem, incluindo cabeçalhos e corpo (“-“ em caso de cache).
$upstream_status Código de resposta HTTP obtido do servidor upstream. EX: ‘200’.
$waf_attack_action Relata a ação do WAF em relação à ação ($BLOCK, $PASS, $LEARNING_BLOCK, $LEARNING_PASS).
$waf_attack_family Informa a classificação da infração do WAF detectada na requisição (SQL, XSS, TRAVERSAL, entre outros)
$waf_block Informa se o WAF bloqueou ou não a ação; 0 quando não bloqueado e 1 quando bloqueado. Quando em “ Learning Mode”, ele não será bloqueado, independentemente do retorno.
$waf_headers Cabeçalhos de requisição analisados pela WAF.
$waf_learning Informa se o WAF está em “learning mode”, geralmente 0 ou 1.
$waf_match Lista de infrações encontradas na requisição, é formada por elementos chave-valor; a chave refere-se ao tipo de violação detectada; o valor mostra a string que gerou a infração.
$waf_score Ele informa a pontuação (score) que será aumentada em caso de match.

A variável $traceback pode ser usada se você tem a opção de Debug rules ativada em sua aplicação. Veja mais sobre Debug de regras com Edge Application.

Edge Functions

O Edge Functions permite que você construa aplicações nativas no edge ou adicione funcionalidades às aplicações de origem com funções orientadas a eventos. É construído com o Azion Cells, nosso core de tecnologia planejado para baixo consumo de memória, confiabilidade e velocidade.

Variável Descrição
$client_id Identificador único de cliente Azion.
$configuration_id Identificador único de configuração Azion.
$function_id Identificador único de função Azion.
$message_content Mensagem usada no console.log, para debug.
$message_level Nível da mensagem, pode ser MDN, DEBUG, INFO, ERROR, LOG ou WARN.
$message_source Fonte da mensagem. Pode aparecer como “CONSOLE”, quando as mensagens são geradas pela API do Console, ou “RUNTIME”, quando forem relacionadas a uma mensagem de erro.
$time Data e hora da requisição.

Nota: para consultar os logs de Edge Functions use console_from_event.log conforme descrito na documentação de Debbuging.

Edge Pulse

Se você tiver habilitado o Azion Edge Pulse em suas Edge Applications, o data source Edge Pulse apresentará os dados de performance mensurados a partir do browser do usuário.

Variáveis Descrição
$browser O UUID gerado para o navegador do cliente utilizado na requisição.
$client_id Identificador exclusivo do cliente Azion.
$contentdownload Tempo usado para baixar o conteúdo requisitado.
$dns Tempo de resolução do DNS.
$downlink Retorna o volume médio de dados recebidos (Mb/s).
$effectivetype O tipo efetivo de conexão (2g, 3g, 4g).
$locationHref Retorna a URL completa da página atual.
$networkduration Duração sem espera do navegador de consulta.
$pageloadtime Tempo desde o início da navegação até o carregamento completo da página.
$platform Arquitetura do sistema operacional (ex.: Linux x86_64, iPhone etc).
$redirectcount Retorna o número de redirecionamentos desde a última navegação, sem redirecionamento no contexto da navegação atual.
$referrer Retorna a url anterior à página atual. Ou seja, a url pela qual o usuário chegou à “locationHref”. Caso o acesso tenha se originado diretamente na página corrente (não por meio de link, mas, por exemplo, por um bookmark), seu valor será uma string vazia. Não fornece acesso DOM à página de referência.
$rendertime A quantidade de tempo levada para renderizar a página.
$ssl Protocolo padrão utilizado para manter uma conexão de tráfego segura. Se a url solicitada tiver uma conexão segura, retorna o tempo necessário para a autenticação.
$tcp Protocolo de Internet que retorna os dados que constituem a página. O tempo que leva para o handshake TCP é o tempo entre o início e o término da conexão.
$time Data e hora da requisição.
$ttfb Tempo até a chegada do primeiro byte da página requisitada. Time To First Byte é o tempo entre o início da navegação e quando o primeiro byte de dados de resposta é recebido.
$type Retorna o tipo de navegação sem redirecionamento. Indica como foi feita a navegação para esta página/script (Ex: navegação, recarregamento).
$typebackforward Tipo de navegação através do histórico da sessão.
$typenavigate Retorna o tipo da última navegação sem redirecionamento, por exemplo: clicando em um link, digitando a URL na barra de endereço ou enviando um formulário.
$typereload Tipo de navegação para a operação de recarregamento, ou seja, quando a página foi recarregada.
$typereserved Qualquer tipo de navegação não definida por aqueles mencionados anteriormente (tipoNavigate, tipoReload).
$userAgent Ele identifica o navegador UA do cliente.

WAF

Caso tenha contratado o produto Web Application Firewall, o data source WAF Events apresentará as requisições analisadas pelo WAF para permitir que você mapeie o score atribuído a requisição, as regras de WAF que deram match, o motivo do bloqueio e muito mais.

Variável Descrição
$attack_family Informa as famílias de ataques, categorias onde nosso Web Application Firewall identifica o ataque e classifica-o conforme o OWASP Top 10.
$blocked Informa se o WAF bloqueou ou não a ação; 0 quando não bloqueado e 1 quando bloqueado Quando em “Learning Mode”, não será bloqueado, independente do retorno.
$client_id Identificador único de cliente Azion.
$geoloc_country_name Nome do país do cliente remoto, por exemplo “Russian Federation”, “United States”.
Detecção por geolocalização de endereço IP.
$host Informação de Host enviada na linha de requisição; ou campo Host do cabeçalho HTTP.
$remote_address Endereço IP da origem que gerou a requisição.
$server_protocol O protocolo da conexão estabelecida, usualmente “HTTP/1.1” ou “HTTP/2.0”.
$time Data e hora da requisição.
$total_blocked Informa o número total de requisições bloqueadas.
$total_processed Informa o número de requisições processadas.
$waf_action Informa o tipo ação tomada pelo WAF ($PASS, $BLOCK, $LEARNING_PASS).
$waf_args Os argumentos da requisição.
$waf_learning Informa se o WAF está em modo learning, usualmente 0 ou 1.
$waf_match Lista de infrações encontradas na request, é formada por elementos chave-valor; a chave é referente ao tipo de infração detectada; o valor apresenta a string que gerou a infração.
$waf_score Informa a pontuação que será incrementada em caso de match.
$waf_server Hostname utilizado na requisição.
$waf_uri URI utilizada na requisição.

2. Time Filter

O Real-Time Events armazena os eventos das últimas 168 horas. O Time Filter possibilita que você refine o resultado da busca de eventos e vem por padrão selecionado para Last 15 minutes, mas você pode alterar a abrangência da busca selecionando:

  • Last 15 minutes
  • Last 30 minutes
  • Last 1 hour
  • Last 3 hours
  • Last 6 hours
  • Last 12 hours
  • Last day
  • Last 2 days
  • Last 3 days
  • Last 5 days
  • Last 7 days

Observação: usando o campo Custom, você também pode personalizar sua busca selecionando um intervalo de tempo durante as últimas 168 horas.


3. Filter by

No campo Filter by, você pode filtrar, opcionalmente, os resultados da pesquisa usando uma palavra-chave ou frase.

Ao enviar uma pesquisa com o campo Filter by em branco, você obterá todos os registros existentes na Data Origin para o filtro de tempo selecionado.

As buscas são restritas a um determinado campo, usando a seguinte notação: key='value', tal como status='200'. Neste caso, você filtrará apenas os registros que têm estes par, valor e chave especificados. Como chave, você pode utilizar as variáveis das tabelas acima, mas observe que cada Data Source tem sua própria lista de variáveis.

O filtro por tempo é feito utilizando os campos Time Filter ou Custom, por este motivo não é possível utilizar a chave “timestamp” no filtro.

Você pode procurar por composições de campo mais complexas. Use as notações AND, OR e NOT no campo de busca para combinar os campos, tais como status='200' AND scheme='https'.

O campo Filter by utiliza a linguagem SQL, portanto você deve usar “igual” (=) após a chave e “aspas simples” ( ‘ ) em torno de valores, por exemplo: status='200'.

Se você pretende buscar um valor mais genérico, você pode usar o operador “like” em vez de “igual”, exatamente como você usa nas consultas SQL. A consulta final para esta busca pode ser host like '%mydomain%'.


4. Refresh

A busca retorna sempre os resultados ordenados pelo horário de ocorrência do evento, do mais recente para o mais antigo.

Você pode utilizar o botão Refresh para atualizar os dados retornados, repetindo a última busca realizada.


Não encontrou o que procurava? Abra um ticket.