Alarmes
Os alarmes que aguardam uma resposta, reconhecidos onde são lidos, sobre a linha do tempo persistente de toda transição de estado de alarme.
A aba Alarmes é a tela de operação dos alarmes: o que aguarda agora e o registro do que já
aconteceu, empilhados numa tela só. Ela é a primeira aba de Eventos
(/events?view=alarms), a aba em que a página abre, e onde o indicador de alarme da barra de status
cai quando você clica nele. Vê-la exige Ver eventos; responder a um alarme aqui exige Operar a
lógica; exportar o histórico exige Exportar/importar históricos. Os alarmes em si são
definidos em Logic > Alarms; esta aba nunca edita um.
A aba empilha dois cartões: Alarmes atuais em cima, lido ao vivo do registro de alarmes, e Histórico embaixo, lido do diário persistente.
Alarmes atuais
O cartão lista todo alarme que está ativo ou ainda aguardando um reconhecimento: exatamente a população que a barra de status conta, para que as duas nunca discordem. Ele é lido direto do registro ao vivo e redesenhado pelos sinais do próprio registro (uma subida, uma normalização ou um reconhecimento vindo de qualquer superfície, uma definição salva, desabilitada ou excluída), nunca por relógio.
O cabeçalho
| Elemento | O que mostra |
|---|---|
| Sino | A marca de alarme. Ele troca para a variante tocando enquanto qualquer coisa está ativa ou não reconhecida, e assume a cor da pior prioridade da lista. |
| Resumo | "N ativos (M não reconhecidos)": quantas condições são verdadeiras agora, e quantos alarmes ainda aguardam resposta. Um alarme que normalizou antes de alguém reconhecê-lo continua contado como não reconhecido. O texto assume o tom da pior prioridade. |
| Reconhecer todos | Responde a todo alarme que aguarda, num comando só. Desenhado apenas para um papel com Operar a lógica. Fica cinza com o motivo na dica enquanto o runtime está parado ("Runtime parado") ou enquanto nada aguarda ("Nenhum alarme está esperando resposta."); fora disso a dica diz "Reconhecer todo alarme que ainda espera resposta". O feed de ações responde "Todos os alarmes reconhecidos." |
As linhas
As linhas são ordenadas por prioridade, da pior para a melhor (Crítica, Alta, Média, Baixa), e dentro de uma prioridade pela ativação mais antiga primeiro, de modo que o alarme que mais merece resposta fique mais perto do topo. A grade é compacta, com no máximo 240 pixels de altura, e rola dentro do cartão.
| Coluna | O que é |
|---|---|
| Nome | Um ponto no tom da prioridade e, em seguida, o nome do alarme. Passar o ponteiro sobre o nome mostra a mensagem do alarme. |
| Endereço | O endereço Logic com raiz do alarme, Alarms.<folders>.<name>, do jeito que expressões e dashboards se referem a ele. |
| Estado | O estado e a prioridade, por exemplo "Ativo, não reconhecido · Crítica". As palavras de estado são as quatro da máquina de estados do alarme: Sem alarme, Ativo, não reconhecido, Ativo, reconhecido e Normalizado, não reconhecido (a condição voltou ao normal antes de alguém responder). |
| Desde | A data e a hora em que a ativação atual começou; um traço quando a condição já normalizou e a linha só aguarda o seu reconhecimento. |
| Reconhecer | Desenhado apenas numa linha ainda não reconhecida, e apenas para um papel com Operar a lógica. A sua dica diz "Reconhecer" seguido do nome do alarme; ele fica cinza com "Runtime parado" enquanto o runtime está parado. O feed de ações responde com o nome do alarme seguido de "reconhecido." |
Um reconhecimento é despachado por vez; um segundo acionamento enquanto o primeiro ainda está na fila da lógica é ignorado, em vez de responder a uma linha que a lista já soltou. Todo reconhecimento feito neste cartão passa pelo mesmo funil registrado em diário que a página Logic usa e é gravado no histórico abaixo com o nome do usuário autenticado naquela janela, ou Estação quando ninguém está autenticado ali. Reconhecer um alarme que não tem nada pendente não faz nada. Um alarme cuja definição não exige reconhecimento nunca aparece como não reconhecido: ele sobe direto para "Ativo, reconhecido" e cai direto para Sem alarme, então a sua linha aparece enquanto ele está ativo e não carrega Reconhecer.
Quando nada está ativo nem aguardando, o cartão diz "Nenhum alarme está ativo ou esperando resposta." com "Quando um alarme sobe, ele aparece aqui para poder ser reconhecido."
Recusas
| Situação | O que acontece |
|---|---|
| O papel não tem Operar a lógica | Nem Reconhecer nem Reconhecer todos é desenhado; as linhas continuam legíveis. Um acionamento que ainda assim chegue ao tratador responde "Seu papel pode ver a Logic, mas não pode operá-la (escrever valores, executar ações, reconhecer alarmes)." |
| O runtime está parado | Os dois verbos continuam desenhados e cinzas com "Runtime parado"; a lista ainda mostra o estado que o registro guarda. |
| Nada aguarda | Reconhecer todos fica cinza com "Nenhum alarme está esperando resposta."; nenhuma linha carrega Reconhecer. |
Histórico
O cartão sob os alarmes atuais é a linha do tempo persistente: uma linha por transição de estado de alarme, na conduta compartilhada das três linhas do tempo descrita em Eventos.
Busca e filtro
| Controle | Valores | O que faz |
|---|---|---|
| Busca | Texto de exemplo "Busque por nome, mensagem ou origem" | Casamento por "contém" no nome do alarme, na sua mensagem e na origem da transição, como foram fotografados na hora. |
| Prioridade | Todas as prioridades (padrão), Crítica, Alta, Média, Baixa | Mantém apenas as transições de alarmes que tinham aquela prioridade quando aconteceram. |
| De, Até | Duas caixas de data, vazias de início | Mantém apenas as transições dentro do período, cada caixa um extremo dele: uma caixa vazia não é limite nenhum, e o dia escolhido em Até entra inteiro. Enquanto alguma das duas tem uma data, um xis ao lado ("Limpar o período") esvazia as duas. As regras são as que todas as linhas do tempo compartilham, em Eventos. |
| Atualizar | Relê o diário; dica "Atualizar eventos de alarme". | |
| Exportar | Exportar como CSV…, Exportar como JSON… | Grava toda transição que a busca, a prioridade e o período alcançam, página após página, e não só as linhas listadas no momento. Desenhado apenas com Exportar/importar históricos; fica cinza enquanto a lista está vazia. |
As linhas
| Parte da linha | Conteúdo |
|---|---|
| Hora | Data e hora da transição. |
| Ponto | O tom da prioridade: crítico para Crítica, cautela para Alta, atenção para Média, neutro para Baixa. |
| Nome | O nome do alarme na hora da transição. |
| Resumo | "De → Para · Origem", por exemplo "Sem alarme → Ativo, não reconhecido · Logic". |
| Nível | A palavra da prioridade. |
Toda transição da máquina de estados é gravada, seja qual for a causa. A Origem nomeia a procedência:
| Origem | Significado |
|---|---|
| Logic | A varredura da lógica avaliou a condição: uma subida depois do atraso para ligar, ou uma queda depois do atraso para desligar. |
| O nome de um usuário | Um reconhecimento feito nesta aba, na página Logic ou num Aviso de alarme pelo usuário autenticado ali. |
| Estação | O mesmo reconhecimento sem ninguém autenticado ali, e o Reconhecer da tarja de notificação do alarme, que grava sempre a estação. |
| Agente | Um reconhecimento feito por um agente via MCP, que o diário grava como MCP. |
| Configuração | O alarme foi levado de volta a Sem alarme porque a sua definição foi salva com condição, atrasos, exigência de reconhecimento ou estado de habilitação alterados, ou porque ele foi excluído. |
A linha e o painel de detalhes dizem a origem na língua da estação, e a busca a encontra tanto por essa palavra quanto pela que o diário gravou. A linha copiada e os arquivos exportados a escrevem como o diário a gravou: Logic, Station, MCP, Configuration ou o nome do usuário.
O painel de detalhes
Selecionar uma linha abre o painel com o distintivo da prioridade e o nome, o instante completo, o resumo da transição, a mensagem que o alarme anunciou na hora (ou "Nenhuma mensagem capturada.") e dois cartões:
| Cartão | Campo | Conteúdo |
|---|---|---|
| EVENTO | Nível | A prioridade. |
| EVENTO | ID do evento | A identidade desta transição no diário. |
| SNAPSHOT DO ALARME | Transição | "De → Para" nas palavras de estado. |
| SNAPSHOT DO ALARME | Origem | Logic, o nome de um usuário, Estação, Agente ou Configuração. |
| SNAPSHOT DO ALARME | ID do alarme | O id estável da definição do alarme, o mesmo depois de renomear. |
Copiar o evento copia "instante | Alarme | prioridade | nome | De → Para · Origem | mensagem" como uma linha e responde "Evento copiado para a área de transferência."
Colunas da exportação
| Coluna | CSV | JSON |
|---|---|---|
| Instante | Primeira coluna, encabeçada "Timestamp (UTC-03:00)" (o fuso da própria estação) | Timestamp |
| Prioridade | Priority |
Priority |
| Nome | Name |
Name |
| Transição | Transition, escrito "De → Para" |
From e To, dois campos |
| Origem | Source |
Source |
| Mensagem | Message |
Message |
| Id do evento | EventId |
EventId |
| Id do alarme | AlarmId |
AlarmId |
O arquivo JSON é um envelope, { "TimeZone": "...", "Events": [ ... ] }. Os nomes dos arquivos são
alarm-history-<yyyyMMdd-HHmmss>.csv e .json. O CSV segue a preferência de separador decimal da
estação como toda outra exportação: com decimais por ponto o separador de lista é ,, com decimais
por vírgula ele é ;. Uma célula que começa com =, +, - ou @ recebe um apóstrofo na frente
para que a planilha a leia como texto.
Estados vazios e a linha de status
- "Nenhum evento de alarme ainda" com "As transições de alarme vão aparecer aqui conforme o runtime as observar."
- "Nenhum registro de eventos de alarme combina com estes filtros" com "Ajuste o filtro de prioridade ou os termos de busca para ampliar este histórico."
- A linha de status diz "N mostrados · página 1" e, em seguida, " · filtrado" quando uma busca, uma prioridade ou um período está em vigor; à direita, "1 selecionada" e "Atualizado hh:mm:ss".
O que a aba Alarmes não faz
- Ela não cria, edita, habilita, desabilita nem exclui um alarme; isso é Logic > Alarms.
- Ela não silencia nem engaveta um alarme, e não emite som nenhum.
- Ela não restaura o estado reconhecido depois de um reinício: o registro rededuz todo estado a partir da primeira varredura, e um reconhecimento que estava pendente precisa ser dado de novo. O histórico guarda as transições de antes e de depois.
- Ela não diz quem respondeu pelo Reconhecer da tarja de notificação: esse reconhecimento é gravado como Estação, seja quem for o usuário autenticado.
- Ela não filtra o histórico por alarme nem por estado; busque pelo nome, estreite o período com De e Até, ou exporte o resultado.
- O histórico não tem verbo próprio: nada aqui exclui uma transição.